|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ContentHandler
Receives notifications of the content of a plain RFC822 or MIME message.
Implement this interface and register an instance of that implementation
with a MimeStreamParser
instance using its
MimeStreamParser.setContentHandler(ContentHandler)
method. The parser uses the ContentHandler
instance to report
basic message-related events like the start and end of the body of a
part in a multipart MIME entity.
Events will be generated in the order the corresponding elements occur in the message stream parsed by the parser. E.g.:
startMessage() startHeader() field(...) field(...) ... endHeader() startMultipart() preamble(...) startBodyPart() startHeader() field(...) field(...) ... endHeader() body() endBodyPart() startBodyPart() startHeader() field(...) field(...) ... endHeader() body() endBodyPart() epilogue(...) endMultipart() endMessage()The above shows an example of a MIME message consisting of a multipart body containing two body parts.
See MIME RFCs 2045-2049 for more information on the structure of MIME messages and RFC 822 and 2822 for the general structure of Internet mail messages.
Method Summary | |
---|---|
void |
body(BodyDescriptor bd,
java.io.InputStream is)
Called when the body of a discrete (non-multipart) entity is about to be parsed. |
void |
endBodyPart()
Called when a body part ends. |
void |
endHeader()
Called when there are no more header fields in a message or body part. |
void |
endMessage()
Called when a message ends. |
void |
endMultipart()
Called when the body of an entity has been parsed. |
void |
epilogue(java.io.InputStream is)
Called for the epilogue (whatever comes after the final body part) of a multipart/* entity. |
void |
field(java.lang.String fieldData)
Called for each field of a header. |
void |
preamble(java.io.InputStream is)
Called for the preamble (whatever comes before the first body part) of a multipart/* entity. |
void |
raw(java.io.InputStream is)
Called when a new entity (message or body part) starts and the parser is in raw mode. |
void |
startBodyPart()
Called when a new body part starts inside a multipart/* entity. |
void |
startHeader()
Called when a header (of a message or body part) is about to be parsed. |
void |
startMessage()
Called when a new message starts (a top level message or an embedded rfc822 message). |
void |
startMultipart(BodyDescriptor bd)
Called when the body of a multipart entity is about to be parsed. |
Method Detail |
---|
void startMessage()
void endMessage()
void startBodyPart()
multipart/*
entity.
void endBodyPart()
void startHeader()
void field(java.lang.String fieldData)
fieldData
- the raw contents of the field
(Field-Name: field value
). The value will not be
unfolded.void endHeader()
void preamble(java.io.InputStream is) throws java.io.IOException
multipart/*
entity.
is
- used to get the contents of the preamble.
java.io.IOException
- should be thrown on I/O errors.void epilogue(java.io.InputStream is) throws java.io.IOException
multipart/*
entity.
is
- used to get the contents of the epilogue.
java.io.IOException
- should be thrown on I/O errors.void startMultipart(BodyDescriptor bd)
bd
- encapsulates the values (either read from the
message stream or, if not present, determined implictly
as described in the
MIME rfc:s) of the Content-Type
and
Content-Transfer-Encoding
header fields.void endMultipart()
void body(BodyDescriptor bd, java.io.InputStream is) throws java.io.IOException
bd
- see startMultipart(BodyDescriptor)
is
- the contents of the body. NOTE: this is the raw body contents
- it will not be decoded if encoded. The bd
parameter should be used to determine how the stream data
should be decoded.
java.io.IOException
- should be thrown on I/O errors.void raw(java.io.InputStream is) throws java.io.IOException
raw
mode.
is
- the raw contents of the entity.
java.io.IOException
- should be thrown on I/O errors.MimeStreamParser.setRaw(boolean)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |