org.jvnet.mimepull
Class MIMEMessage

java.lang.Object
  extended by org.jvnet.mimepull.MIMEMessage

public class MIMEMessage
extends java.lang.Object

Represents MIME message. MIME message parsing is done lazily using a pull parser.

Author:
Jitendra Kotamraju

Constructor Summary
MIMEMessage(java.io.InputStream in, java.lang.String boundary)
           
MIMEMessage(java.io.InputStream in, java.lang.String boundary, MIMEConfig config)
          Creates a MIME message from the content's stream.
 
Method Summary
 java.util.List<MIMEPart> getAttachments()
          Gets all the attachments by parsing the entire MIME message.
 MIMEPart getPart(int index)
          Creates nth attachment lazily.
 MIMEPart getPart(java.lang.String contentId)
          Creates a lazy attachment for a given Content-ID.
 boolean makeProgress()
          Parses the MIME message in a pull fashion.
 void parseAll()
          Parses the whole MIME message eagerly
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MIMEMessage

public MIMEMessage(java.io.InputStream in,
                   java.lang.String boundary)
See Also:
MIMEMessage(InputStream, String, MIMEConfig)

MIMEMessage

public MIMEMessage(java.io.InputStream in,
                   java.lang.String boundary,
                   MIMEConfig config)
Creates a MIME message from the content's stream. The content stream is closed when EOF is reached.

Parameters:
in - MIME message stream
boundary - the separator for parts(pass it without --)
config - various configuration parameters
Method Detail

getAttachments

public java.util.List<MIMEPart> getAttachments()
Gets all the attachments by parsing the entire MIME message. Avoid this if possible since it is an expensive operation.

Returns:
list of attachments.

getPart

public MIMEPart getPart(int index)
Creates nth attachment lazily. It doesn't validate if the message has so many attachments. To do the validation, the message needs to be parsed. The parsing of the message is done lazily and is done while reading the bytes of the part.

Parameters:
index - sequential order of the part. starts with zero.
Returns:
attachemnt part

getPart

public MIMEPart getPart(java.lang.String contentId)
Creates a lazy attachment for a given Content-ID. It doesn't validate if the message contains an attachment with the given Content-ID. To do the validation, the message needs to be parsed. The parsing of the message is done lazily and is done while reading the bytes of the part.

Parameters:
contentId - Content-ID of the part, expects Content-ID without <, >
Returns:
attachemnt part

parseAll

public void parseAll()
Parses the whole MIME message eagerly


makeProgress

public boolean makeProgress()
Parses the MIME message in a pull fashion.

Returns:
false if the parsing is completed.


Copyright © {inceptionYear}-2009 Sun Microsystems Inc. All Rights Reserved.