public class AttachmentPartImpl
extends javax.xml.soap.AttachmentPart
Constructor and Description |
---|
AttachmentPartImpl() |
Modifier and Type | Method and Description |
---|---|
void |
addMimeHeader(String name,
String value)
Adds a MIME header with the specified name and value to this
AttachmentPart
object. |
void |
clearContent()
Clears out the content of this
AttachmentPart object. |
void |
detachAttachmentFile()
Detach the attachment file from this class, so it is not cleaned up.
|
Iterator |
getAllMimeHeaders()
Retrieves all the headers for this
AttachmentPart object as an iterator over
the MimeHeader objects. |
String |
getAttachmentFile()
Get the filename of this attachment.
|
InputStream |
getBase64Content() |
Object |
getContent()
Gets the content of this
AttachmentPart object as a Java object. |
javax.activation.DataHandler |
getDataHandler()
Gets the
DataHandler object for this AttachmentPart object. |
Iterator |
getMatchingMimeHeaders(String[] names)
Retrieves all
MimeHeader objects that match a name in the given array. |
String[] |
getMimeHeader(String name)
Gets all the values of the header identified by the given
String . |
Iterator |
getNonMatchingMimeHeaders(String[] names)
Retrieves all
MimeHeader objects whose name does not match a name in the given
array. |
org.apache.axiom.om.OMText |
getOMText()
Retrieve the OMText
|
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.
|
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.
|
int |
getSize()
Returns the number of bytes in this
AttachmentPart object. |
org.apache.axiom.om.impl.dom.TextImpl |
getText(org.apache.axiom.om.impl.dom.DocumentImpl doc) |
boolean |
isAttachmentReferenced() |
boolean |
matches(javax.xml.soap.MimeHeaders headers)
Check whether at least one of the headers of this object matches a provided header
|
void |
removeAllMimeHeaders()
Removes all the MIME header entries.
|
void |
removeMimeHeader(String header)
Removes all MIME headers that match the given name.
|
protected void |
setAttachmentFile(String path)
Set the filename of this attachment part.
|
void |
setAttachmentReferenced(boolean attachmentReferenced) |
void |
setBase64Content(InputStream content,
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.
|
void |
setContent(Object object,
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. |
void |
setDataHandler(javax.activation.DataHandler datahandler)
Sets the given
DataHandler object as the data handler for this
AttachmentPart object. |
void |
setMimeHeader(String name,
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.
|
void |
setRawContent(InputStream content,
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.
|
void |
setRawContentBytes(byte[] content,
int offset,
int len,
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.
|
public boolean matches(javax.xml.soap.MimeHeaders headers)
headers
- headers
parameter, false if none of the headers of this
AttachmentPart matches at least one of the header in the provided
headers
parameterpublic boolean isAttachmentReferenced()
public void setAttachmentReferenced(boolean attachmentReferenced)
public int getSize() throws javax.xml.soap.SOAPException
AttachmentPart
object.getSize
in class javax.xml.soap.AttachmentPart
AttachmentPart
object in bytes or -1 if the size cannot
be determinedjavax.xml.soap.SOAPException
- if the content of this attachment is corrupted of if
there was an exception while trying to determine the
size.public void clearContent()
AttachmentPart
object. The MIME header portion
is left untouched.clearContent
in class javax.xml.soap.AttachmentPart
public Object getContent() throws javax.xml.soap.SOAPException
AttachmentPart
object as a Java object. The type of the
returned Java object depends on DataContentHandler
object that is
used to interpret the bytes Content-Type
given in the headerDataContentHandler
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 JAXM-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.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.getContent
in class javax.xml.soap.AttachmentPart
AttachmentPart
objectjavax.xml.soap.SOAPException
- if there is no content set into this AttachmentPart
object or if there was a data transformation errorpublic void setContent(Object object, String contentType)
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.setContent
in class javax.xml.soap.AttachmentPart
object
- the Java object that makes up the content for this attachment partcontentType
- the MIME string that specifies the type of the contentIllegalArgumentException
- if the contentType does not match the type of the content
object, or if there was no DataContentHandler
object for this content objectgetContent()
public javax.activation.DataHandler getDataHandler() throws javax.xml.soap.SOAPException
DataHandler
object for this AttachmentPart
object.getDataHandler
in class javax.xml.soap.AttachmentPart
DataHandler
object associated with this AttachmentPart
objectjavax.xml.soap.SOAPException
- if there is no data in this AttachmentPart
objectpublic void setDataHandler(javax.activation.DataHandler datahandler)
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.setDataHandler
in class javax.xml.soap.AttachmentPart
datahandler
- DataHandler
object to be setIllegalArgumentException
- if there was a problem with the specified
DataHandler
objectpublic void removeMimeHeader(String header)
removeMimeHeader
in class javax.xml.soap.AttachmentPart
header
- - the string name of the MIME header/s to be removedpublic void removeAllMimeHeaders()
removeAllMimeHeaders
in class javax.xml.soap.AttachmentPart
public String[] getMimeHeader(String name)
String
.getMimeHeader
in class javax.xml.soap.AttachmentPart
name
- the name of the header; example: "Content-Type"String
array giving the value for the specified headersetMimeHeader(java.lang.String, java.lang.String)
public void setMimeHeader(String name, String value)
Note that RFC822 headers can only contain US-ASCII characters.
setMimeHeader
in class javax.xml.soap.AttachmentPart
name
- a String
giving the name of the header for which to searchvalue
- a String
giving the value to be set for the header whose name
matches the given nameIllegalArgumentException
- if there was a problem with the specified mime header name
or valuepublic void addMimeHeader(String name, String value)
AttachmentPart
object.
Note that RFC822 headers can contain only US-ASCII characters.
addMimeHeader
in class javax.xml.soap.AttachmentPart
name
- a String
giving the name of the header to be addedvalue
- a String
giving the value of the header to be addedIllegalArgumentException
- if there was a problem with the specified mime header name
or valuepublic Iterator getAllMimeHeaders()
AttachmentPart
object as an iterator over
the MimeHeader
objects.getAllMimeHeaders
in class javax.xml.soap.AttachmentPart
Iterator
object with all of the Mime headers for this
AttachmentPart
objectpublic Iterator getMatchingMimeHeaders(String[] names)
MimeHeader
objects that match a name in the given array.getMatchingMimeHeaders
in class javax.xml.soap.AttachmentPart
names
- a String
array with the name(s) of the MIME headers to be returnedIterator
objectpublic Iterator getNonMatchingMimeHeaders(String[] names)
MimeHeader
objects whose name does not match a name in the given
array.getNonMatchingMimeHeaders
in class javax.xml.soap.AttachmentPart
names
- a String
array with the name(s) of the MIME headers not to be
returned AttachmentPart
object except those that
match one of the names in the given array. The nonmatching MIME headers are returned
as an Iterator
object.public InputStream getBase64Content() throws javax.xml.soap.SOAPException
getBase64Content
in class javax.xml.soap.AttachmentPart
javax.xml.soap.SOAPException
public InputStream getRawContent() throws javax.xml.soap.SOAPException
getRawContent
in class javax.xml.soap.AttachmentPart
javax.xml.soap.SOAPException
- - if there is no content set into this AttachmentPart object or if
there was a data transformation error.public byte[] getRawContentBytes() throws javax.xml.soap.SOAPException
getRawContentBytes
in class javax.xml.soap.AttachmentPart
javax.xml.soap.SOAPException
- - if there is no content set into this AttachmentPart object or if
there was a data transformation error.public void setBase64Content(InputStream content, String contentType) throws javax.xml.soap.SOAPException
setBase64Content
in class javax.xml.soap.AttachmentPart
content
- - the base64 encoded data to add to the attachment part contentType - the
value to set into the Content-Type headerjavax.xml.soap.SOAPException
- - if there is an error in setting the content java.lang.NullPointerException
- if content is nullpublic void setRawContent(InputStream content, String contentType) throws javax.xml.soap.SOAPException
setRawContent
in class javax.xml.soap.AttachmentPart
content
- - the raw data to add to the attachment part contentType - the value to set
into the Content-Type headerjavax.xml.soap.SOAPException
- - if there is an error in setting the content java.lang.NullPointerException
- if content is nullpublic void setRawContentBytes(byte[] content, int offset, int len, String contentType) throws javax.xml.soap.SOAPException
setRawContentBytes
in class javax.xml.soap.AttachmentPart
content
- - the raw data to add to the attachment part contentType - the value to set
into the Content-Type header offset - the offset in the byte array of the
content len - the number of bytes that form the contentjavax.xml.soap.SOAPException
- - if an there is an error in setting the content or content is nullpublic org.apache.axiom.om.OMText getOMText() throws javax.xml.soap.SOAPException
javax.xml.soap.SOAPException
- If omText is not availablepublic org.apache.axiom.om.impl.dom.TextImpl getText(org.apache.axiom.om.impl.dom.DocumentImpl doc)
protected void setAttachmentFile(String path)
path
- the new file pathpublic void detachAttachmentFile()
null
.public String getAttachmentFile()
Copyright © 2004–2014 The Apache Software Foundation. All rights reserved.