Methods Summary |
---|
public abstract void | addMimeHeader(java.lang.String name, java.lang.String value)Adds a MIME header with the specified name and value to this
AttachmentPart object.
Note that RFC822 headers can contain only US-ASCII characters.
|
public abstract void | clearContent()Clears out the content of this AttachmentPart object.
The MIME header portion is left untouched.
|
public abstract java.util.Iterator | getAllMimeHeaders()Retrieves all the headers for this AttachmentPart object
as an iterator over the MimeHeader objects.
|
public abstract java.io.InputStream | getBase64Content()Returns an InputStream which can be used to obtain the
content of AttachmentPart as Base64 encoded
character data, this method would base64 encode the raw bytes
of the attachment and return.
|
public abstract java.lang.Object | getContent()Gets the content of this AttachmentPart object as a Java
object. The type of the returned Java object depends on (1) the
DataContentHandler object that is used to interpret the bytes
and (2) the Content-Type given in the header.
For the MIME content types "text/plain", "text/html" and "text/xml", the
DataContentHandler object does the conversions to and
from the Java types corresponding to the MIME types.
For other MIME types,the DataContentHandler object
can return an InputStream object that contains the content data
as raw bytes.
A SAAJ-compliant implementation must, as a minimum, return a
java.lang.String object corresponding to any content
stream with a Content-Type value of
text/plain , a
javax.xml.transform.stream.StreamSource object corresponding to a
content stream with a Content-Type value of
text/xml , a java.awt.Image object
corresponding to a content stream with a
Content-Type value of image/gif or
image/jpeg . For those content types that an
installed DataContentHandler object does not understand, the
DataContentHandler object is required to return a
java.io.InputStream object with the raw bytes.
|
public java.lang.String | getContentId()Gets the value of the MIME header whose name is "Content-ID".
String[] values = getMimeHeader("Content-ID");
if (values != null && values.length > 0)
return values[0];
return null;
|
public java.lang.String | getContentLocation()Gets the value of the MIME header whose name is "Content-Location".
String[] values = getMimeHeader("Content-Location");
if (values != null && values.length > 0)
return values[0];
return null;
|
public java.lang.String | getContentType()Gets the value of the MIME header whose name is "Content-Type".
String[] values = getMimeHeader("Content-Type");
if (values != null && values.length > 0)
return values[0];
return null;
|
public abstract javax.activation.DataHandler | getDataHandler()Gets the DataHandler object for this AttachmentPart
object.
|
public abstract java.util.Iterator | getMatchingMimeHeaders(java.lang.String[] names)Retrieves all MimeHeader objects that match a name in
the given array.
|
public abstract java.lang.String[] | getMimeHeader(java.lang.String name)Gets all the values of the header identified by the given
String .
|
public abstract java.util.Iterator | getNonMatchingMimeHeaders(java.lang.String[] names)Retrieves all MimeHeader objects whose name does
not match a name in the given array.
|
public abstract java.io.InputStream | getRawContent()Gets the content of this AttachmentPart object as an
InputStream as if a call had been made to getContent and no
DataContentHandler had been registered for the
content-type of this AttachmentPart .
Note that reading from the returned InputStream would result in consuming
the data in the stream. It is the responsibility of the caller to reset
the InputStream appropriately before calling a Subsequent API. If a copy
of the raw attachment content is required then the {@link #getRawContentBytes} API
should be used instead.
|
public abstract byte[] | getRawContentBytes()Gets the content of this AttachmentPart object as a
byte[] array as if a call had been made to getContent and no
DataContentHandler had been registered for the
content-type of this AttachmentPart .
|
public abstract int | getSize()Returns the number of bytes in this AttachmentPart
object.
|
public abstract void | removeAllMimeHeaders()Removes all the MIME header entries.
|
public abstract void | removeMimeHeader(java.lang.String header)Removes all MIME headers that match the given name.
|
public abstract void | setBase64Content(java.io.InputStream content, java.lang.String contentType)Sets the content of this attachment part from the Base64 source
InputStream and sets the value of the
Content-Type header to the value contained in
contentType , This method would first decode the base64
input and write the resulting raw bytes to the attachment.
A subsequent call to getSize() may not be an exact measure
of the content size.
|
public abstract void | setContent(java.lang.Object object, java.lang.String contentType)Sets the content of this attachment part to that of the given
Object and sets the value of the Content-Type
header to the given type. The type of the
Object should correspond to the value given for the
Content-Type . This depends on the particular
set of DataContentHandler objects in use.
|
public void | setContentId(java.lang.String contentId)Sets the MIME header whose name is "Content-ID" with the given value.
setMimeHeader("Content-ID", contentId);
|
public void | setContentLocation(java.lang.String contentLocation)Sets the MIME header whose name is "Content-Location" with the given value.
setMimeHeader("Content-Location", contentLocation);
|
public void | setContentType(java.lang.String contentType)Sets the MIME header whose name is "Content-Type" with the given value.
setMimeHeader("Content-Type", contentType);
|
public abstract void | setDataHandler(javax.activation.DataHandler dataHandler)Sets the given DataHandler object as the data handler
for this AttachmentPart object. Typically, on an incoming
message, the data handler is automatically set. When
a message is being created and populated with content, the
setDataHandler method can be used to get data from
various data sources into the message.
|
public abstract void | setMimeHeader(java.lang.String name, java.lang.String value)Changes the first header entry that matches the given name
to the given value, adding a new header if no existing header
matches. This method also removes all matching headers but the first.
Note that RFC822 headers can only contain US-ASCII characters.
|
public abstract void | setRawContent(java.io.InputStream content, java.lang.String contentType)Sets the content of this attachment part to that contained by the
InputStream content and sets the value of the
Content-Type header to the value contained in
contentType .
A subsequent call to getSize() may not be an exact measure
of the content size.
|
public abstract void | setRawContentBytes(byte[] content, int offset, int len, java.lang.String contentType)Sets the content of this attachment part to that contained by the
byte[] array content and sets the value of the
Content-Type header to the value contained in
contentType .
|