Package org.apache.james.mime4j.parser
Class AbstractContentHandler
- java.lang.Object
-
- org.apache.james.mime4j.parser.AbstractContentHandler
-
- All Implemented Interfaces:
ContentHandler
- Direct Known Subclasses:
SimpleContentHandler
public abstract class AbstractContentHandler extends java.lang.Object implements ContentHandler
Abstract base class for customContentHandler
implementations. Methods of this class take no action and are expected to be selectively overridden by super-classes.
-
-
Constructor Summary
Constructors Constructor Description AbstractContentHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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 amultipart/*
entity.void
field(Field field)
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 amultipart/*
entity.void
raw(java.io.InputStream is)
Called when a new entity (message or body part) starts and the parser is inraw
mode.void
startBodyPart()
Called when a new body part starts inside amultipart/*
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
-
endMultipart
public void endMultipart() throws MimeException
Description copied from interface:ContentHandler
Called when the body of an entity has been parsed.- Specified by:
endMultipart
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
startMultipart
public void startMultipart(BodyDescriptor bd) throws MimeException
Description copied from interface:ContentHandler
Called when the body of a multipart entity is about to be parsed.- Specified by:
startMultipart
in interfaceContentHandler
- Parameters:
bd
- encapsulates the values (either read from the message stream or, if not present, determined implictly as described in the MIME rfc:s) of theContent-Type
andContent-Transfer-Encoding
header fields.- Throws:
MimeException
- on processing errors
-
body
public void body(BodyDescriptor bd, java.io.InputStream is) throws MimeException, java.io.IOException
Description copied from interface:ContentHandler
Called when the body of a discrete (non-multipart) entity is about to be parsed.- Specified by:
body
in interfaceContentHandler
- Parameters:
bd
- seeContentHandler.startMultipart(BodyDescriptor)
is
- the contents of the body. NOTE: this is the raw body contents - it will not be decoded if encoded. Thebd
parameter should be used to determine how the stream data should be decoded.- Throws:
MimeException
- on processing errorsjava.io.IOException
- should be thrown on I/O errors.
-
endBodyPart
public void endBodyPart() throws MimeException
Description copied from interface:ContentHandler
Called when a body part ends.- Specified by:
endBodyPart
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
endHeader
public void endHeader() throws MimeException
Description copied from interface:ContentHandler
Called when there are no more header fields in a message or body part.- Specified by:
endHeader
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
endMessage
public void endMessage() throws MimeException
Description copied from interface:ContentHandler
Called when a message ends.- Specified by:
endMessage
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
epilogue
public void epilogue(java.io.InputStream is) throws MimeException, java.io.IOException
Description copied from interface:ContentHandler
Called for the epilogue (whatever comes after the final body part) of amultipart/*
entity.- Specified by:
epilogue
in interfaceContentHandler
- Parameters:
is
- used to get the contents of the epilogue.- Throws:
MimeException
- on processing errorsjava.io.IOException
- should be thrown on I/O errors.
-
field
public void field(Field field) throws MimeException
Description copied from interface:ContentHandler
Called for each field of a header.- Specified by:
field
in interfaceContentHandler
- Parameters:
field
- the MIME field.- Throws:
MimeException
- on processing errors
-
preamble
public void preamble(java.io.InputStream is) throws MimeException, java.io.IOException
Description copied from interface:ContentHandler
Called for the preamble (whatever comes before the first body part) of amultipart/*
entity.- Specified by:
preamble
in interfaceContentHandler
- Parameters:
is
- used to get the contents of the preamble.- Throws:
MimeException
- on processing errorsjava.io.IOException
- should be thrown on I/O errors.
-
startBodyPart
public void startBodyPart() throws MimeException
Description copied from interface:ContentHandler
Called when a new body part starts inside amultipart/*
entity.- Specified by:
startBodyPart
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
startHeader
public void startHeader() throws MimeException
Description copied from interface:ContentHandler
Called when a header (of a message or body part) is about to be parsed.- Specified by:
startHeader
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
startMessage
public void startMessage() throws MimeException
Description copied from interface:ContentHandler
Called when a new message starts (a top level message or an embedded rfc822 message).- Specified by:
startMessage
in interfaceContentHandler
- Throws:
MimeException
- on processing errors
-
raw
public void raw(java.io.InputStream is) throws MimeException, java.io.IOException
Description copied from interface:ContentHandler
Called when a new entity (message or body part) starts and the parser is inraw
mode.- Specified by:
raw
in interfaceContentHandler
- Parameters:
is
- the raw contents of the entity.- Throws:
MimeException
- on processing errorsjava.io.IOException
- should be thrown on I/O errors.- See Also:
MimeStreamParser.setRaw()
-
-