Package org.apache.james.mime4j.message
Class MaximalBodyDescriptor
- java.lang.Object
-
- org.apache.james.mime4j.message.MaximalBodyDescriptor
-
- All Implemented Interfaces:
BodyDescriptor
,ContentDescriptor
public class MaximalBodyDescriptor extends java.lang.Object implements BodyDescriptor
ExtendedBodyDescriptor
implementation with complete content details.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
boundary
private java.lang.String
charset
private static java.lang.String
CONTENT_DESCRIPTION
private static java.lang.String
CONTENT_DISPOSITION
private static java.lang.String
CONTENT_ID
private static java.lang.String
CONTENT_LANGUAGE
private static java.lang.String
CONTENT_LENGTH
private static java.lang.String
CONTENT_LOCATION
private static java.lang.String
CONTENT_MD5
private static java.lang.String
CONTENT_TRANSFER_ENCODING
private static java.lang.String
CONTENT_TYPE
private java.util.Map<java.lang.String,ParsedField>
fields
private java.lang.String
mediaType
private static java.lang.String
MIME_VERSION
private java.lang.String
mimeType
private java.lang.String
subType
-
Constructor Summary
Constructors Constructor Description MaximalBodyDescriptor(java.lang.String mimeType, java.lang.String mediaType, java.lang.String subType, java.lang.String boundary, java.lang.String charset, java.util.Map<java.lang.String,ParsedField> fields)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getBoundary()
Returns the body descriptors boundary.java.lang.String
getCharset()
The body descriptors character set, defaulted appropriately for the MIME type.java.lang.String
getContentDescription()
Gets the value of the RFCContent-Description
header.java.util.Date
getContentDispositionCreationDate()
Gets thecreation-date
parameter value of thecontent-disposition
field.java.lang.String
getContentDispositionFilename()
Gets thefilename
parameter value of thecontent-disposition
field.java.util.Date
getContentDispositionModificationDate()
Gets themodification-date
parameter value of thecontent-disposition
field.java.util.Map<java.lang.String,java.lang.String>
getContentDispositionParameters()
Gets the parameters of thecontent-disposition
field.java.util.Date
getContentDispositionReadDate()
Gets theread-date
parameter value of thecontent-disposition
field.long
getContentDispositionSize()
Gets thesize
parameter value of thecontent-disposition
field.java.lang.String
getContentDispositionType()
Gets the disposition type of thecontent-disposition
field.java.lang.String
getContentId()
Gets the value of the RFCContent-ID
header.java.util.List<java.lang.String>
getContentLanguage()
Get thecontent-language
header values.long
getContentLength()
Returns the body descriptors content-length.java.lang.String
getContentLocation()
Get thecontent-location
header value.java.lang.String
getContentMD5Raw()
Gets the raw, Base64 encoded value of theContent-MD5
field.java.util.Map<java.lang.String,java.lang.String>
getContentTypeParameters()
java.lang.String
getMediaType()
Gets the defaulted MIME media type for this content.int
getMimeMajorVersion()
Gets the MIME major version as specified by theMIME-Version
header.int
getMimeMinorVersion()
Gets the MIME minor version as specified by theMIME-Version
header.java.lang.String
getMimeType()
Returns the body descriptors MIME type.java.lang.String
getSubType()
Gets the defaulted MIME sub type for this content.java.lang.String
getTransferEncoding()
Returns the body descriptors transfer encoding.java.lang.String
toString()
-
-
-
Field Detail
-
CONTENT_TYPE
private static final java.lang.String CONTENT_TYPE
-
CONTENT_LENGTH
private static final java.lang.String CONTENT_LENGTH
-
CONTENT_TRANSFER_ENCODING
private static final java.lang.String CONTENT_TRANSFER_ENCODING
-
CONTENT_DISPOSITION
private static final java.lang.String CONTENT_DISPOSITION
-
CONTENT_ID
private static final java.lang.String CONTENT_ID
-
CONTENT_MD5
private static final java.lang.String CONTENT_MD5
-
CONTENT_DESCRIPTION
private static final java.lang.String CONTENT_DESCRIPTION
-
CONTENT_LANGUAGE
private static final java.lang.String CONTENT_LANGUAGE
-
CONTENT_LOCATION
private static final java.lang.String CONTENT_LOCATION
-
MIME_VERSION
private static final java.lang.String MIME_VERSION
-
mediaType
private final java.lang.String mediaType
-
subType
private final java.lang.String subType
-
mimeType
private final java.lang.String mimeType
-
boundary
private final java.lang.String boundary
-
charset
private final java.lang.String charset
-
fields
private final java.util.Map<java.lang.String,ParsedField> fields
-
-
Constructor Detail
-
MaximalBodyDescriptor
MaximalBodyDescriptor(java.lang.String mimeType, java.lang.String mediaType, java.lang.String subType, java.lang.String boundary, java.lang.String charset, java.util.Map<java.lang.String,ParsedField> fields)
-
-
Method Detail
-
getMimeType
public java.lang.String getMimeType()
Description copied from interface:ContentDescriptor
Returns the body descriptors MIME type.- Specified by:
getMimeType
in interfaceContentDescriptor
- Returns:
- The MIME type, which has been parsed from the content-type definition. Must not be null, but "text/plain", if no content-type was specified.
- See Also:
ContentDescriptor.getMediaType()
,ContentDescriptor.getSubType()
-
getBoundary
public java.lang.String getBoundary()
Description copied from interface:BodyDescriptor
Returns the body descriptors boundary.- Specified by:
getBoundary
in interfaceBodyDescriptor
- Returns:
- Boundary string, if known, or null. The latter may be the case, in particular, if the body is no multipart entity.
-
getCharset
public java.lang.String getCharset()
Description copied from interface:ContentDescriptor
The body descriptors character set, defaulted appropriately for the MIME type.
For
TEXT
types, this will be defaulted tous-ascii
. For other types, when the charset parameter is missing this property will be null.- Specified by:
getCharset
in interfaceContentDescriptor
- Returns:
- Character set, which has been parsed from the
content-type definition. Not null for
TEXT
types, when unset will be set to defaultus-ascii
. For other types, when unset, null will be returned.
-
getMediaType
public java.lang.String getMediaType()
Description copied from interface:ContentDescriptor
Gets the defaulted MIME media type for this content. For exampleTEXT
,IMAGE
,MULTIPART
- Specified by:
getMediaType
in interfaceContentDescriptor
- Returns:
- the MIME media type when content-type specified,
otherwise the correct default (
TEXT
) - See Also:
ContentDescriptor.getMimeType()
-
getSubType
public java.lang.String getSubType()
Description copied from interface:ContentDescriptor
Gets the defaulted MIME sub type for this content.- Specified by:
getSubType
in interfaceContentDescriptor
- Returns:
- the MIME media type when content-type is specified,
otherwise the correct default (
PLAIN
) - See Also:
ContentDescriptor.getMimeType()
-
getContentTypeParameters
public java.util.Map<java.lang.String,java.lang.String> getContentTypeParameters()
-
getTransferEncoding
public java.lang.String getTransferEncoding()
Description copied from interface:ContentDescriptor
Returns the body descriptors transfer encoding.- Specified by:
getTransferEncoding
in interfaceContentDescriptor
- Returns:
- The transfer encoding. Must not be null, but "7bit", if no transfer-encoding was specified.
-
getContentLength
public long getContentLength()
Description copied from interface:ContentDescriptor
Returns the body descriptors content-length.- Specified by:
getContentLength
in interfaceContentDescriptor
- Returns:
- Content length, if known, or -1, to indicate the absence of a content-length header.
-
getMimeMajorVersion
public int getMimeMajorVersion()
Gets the MIME major version as specified by theMIME-Version
header. Defaults to one.- Returns:
- positive integer
-
getMimeMinorVersion
public int getMimeMinorVersion()
Gets the MIME minor version as specified by theMIME-Version
header. Defaults to zero.- Returns:
- positive integer
-
getContentDescription
public java.lang.String getContentDescription()
Gets the value of the RFCContent-Description
header.- Returns:
- value of the
Content-Description
when present, null otherwise
-
getContentId
public java.lang.String getContentId()
Gets the value of the RFCContent-ID
header.- Returns:
- value of the
Content-ID
when present, null otherwise
-
getContentDispositionType
public java.lang.String getContentDispositionType()
Gets the disposition type of thecontent-disposition
field. The value is case insensitive and will be converted to lower case. See RFC2183.- Returns:
- content disposition type, or null when this has not been set
-
getContentDispositionParameters
public java.util.Map<java.lang.String,java.lang.String> getContentDispositionParameters()
Gets the parameters of thecontent-disposition
field. See RFC2183.- Returns:
- parameter value strings indexed by parameter name strings, not null
-
getContentDispositionFilename
public java.lang.String getContentDispositionFilename()
- Returns:
- filename parameter value, or null when it is not present
-
getContentDispositionModificationDate
public java.util.Date getContentDispositionModificationDate()
- Returns:
- modification-date parameter value, or null when this is not present
-
getContentDispositionCreationDate
public java.util.Date getContentDispositionCreationDate()
- Returns:
- creation-date parameter value, or null when this is not present
-
getContentDispositionReadDate
public java.util.Date getContentDispositionReadDate()
- Returns:
- read-date parameter value, or null when this is not present
-
getContentDispositionSize
public long getContentDispositionSize()
- Returns:
- size parameter value, or -1 if this size has not been set
-
getContentLanguage
public java.util.List<java.lang.String> getContentLanguage()
Get thecontent-language
header values. Each applicable language tag will be returned in order. See RFC4646 http://tools.ietf.org/html/rfc4646.- Returns:
- list of language tag Strings, or null if no header exists
-
getContentLocation
public java.lang.String getContentLocation()
Get thecontent-location
header value. See RFC2557- Returns:
- the URL content-location or null if no header exists
-
getContentMD5Raw
public java.lang.String getContentMD5Raw()
Gets the raw, Base64 encoded value of theContent-MD5
field. See RFC1864.- Returns:
- raw encoded content-md5 or null if no header exists
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-