All Packages This Package Class Hierarchy Class Search Index
Class grendel.mime.parser.MimeMultipart
java.lang.Object | +----grendel.mime.parser.MimeObject | +----grendel.mime.parser.MimeContainer | +----grendel.mime.parser.MimeMultipart
This class implements the parser for all "multipart/" MIME subtypes.
See Also: MimeMultipartDigest, MimeDwimText, MimeXSunAttachment
class MimeMultipart extends grendel.mime.parser.MimeContainer { // Fields 14 protected static final int BOUNDARY_NONE; protected static final int BOUNDARY_SEPARATOR; protected static final int BOUNDARY_TERMINATOR; protected static final int MULTIPART_EPILOGUE; protected static final int MULTIPART_FIRST_LINE; protected static final int MULTIPART_HEADERS; protected static final int MULTIPART_LINE; protected static final int MULTIPART_PREAMBLE; ByteBuf boundary; InternetHeaders child_headers; ByteBuf crlf; ByteLineBuffer line_buffer; ByteBuf line_bytes; int state; // Constructors 1 public MimeMultipart(String, InternetHeaders); // Methods 8 protected int checkBoundary(ByteBuf); protected void computeBoundary(); protected void createMultipartChild(); public String defaultSubpartType(); private void process_line(ByteBuf); public void pushBytes(ByteBuf); public void pushEOF(); private void push_child_line(ByteBuf, boolean); }
Fields
line_buffer
ByteLineBuffer line_buffer
line_bytes
ByteBuf line_bytes
boundary
ByteBuf boundary
crlf
ByteBuf crlf
child_headers
InternetHeaders child_headers
state
int state
BOUNDARY_NONE
protected static final int BOUNDARY_NONE
BOUNDARY_TERMINATOR
protected static final int BOUNDARY_TERMINATOR
BOUNDARY_SEPARATOR
protected static final int BOUNDARY_SEPARATOR
MULTIPART_PREAMBLE
protected static final int MULTIPART_PREAMBLE
MULTIPART_HEADERS
protected static final int MULTIPART_HEADERS
MULTIPART_FIRST_LINE
protected static final int MULTIPART_FIRST_LINE
MULTIPART_LINE
protected static final int MULTIPART_LINE
MULTIPART_EPILOGUE
protected static final int MULTIPART_EPILOGUE
Constructors
MimeMultipart
public MimeMultipart(String content_type, InternetHeaders headers)
Methods
computeBoundary
protected void computeBoundary()
defaultSubpartType
public String defaultSubpartType()
When a sub-part doesn't have a content-type specified, this method returns the default type. The default is "text/plain", but, for example, the "multipart/digest" handler overrides this to "message/rfc822". Note that this is a class method.
pushBytes
public void pushBytes(ByteBuf bytes)
Buffers the bytes into lines, and calls process_line() on each line.
- Overrides:
- pushBytes in class MimeObject
pushEOF
public void pushEOF()
Flushes the line buffer, and (maybe) calls process_line() one last time.
- Overrides:
- pushEOF in class MimeContainer
process_line
private void process_line(ByteBuf line)
Called for each line of the body of this multipart. Maintains a state machine and decides what the line means.
checkBoundary
protected int checkBoundary(ByteBuf line_buf)
createMultipartChild
protected void createMultipartChild()
push_child_line
private void push_child_line(ByteBuf line_buf, boolean first_line_p)
All Packages This Package Class Hierarchy Class Search IndexFreshly brewed Java API Documentation automatically generated with polardoc Version 1.0.4