public abstract class MessageImpl extends SOAPMessage implements SOAPConstants
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
acceptFastInfoset
True if the Accept header of this message includes
application/fastinfoset
|
protected FinalArrayList<AttachmentPart> |
attachments |
protected boolean |
attachmentsInitialized |
static String |
CONTENT_ID |
static String |
CONTENT_LOCATION |
protected ContentType |
contentType |
protected static int |
FI_ENCODED_FLAG |
protected MimeHeaders |
headers |
protected boolean |
isFastInfoset
True if this part is encoded using Fast Infoset.
|
static String |
LAZY_SOAP_BODY_PARSING |
protected static Logger |
log |
protected int |
messageByteCount |
protected byte[] |
messageBytes |
protected static int |
MIME_MULTIPART_FLAG |
protected static int |
MIME_MULTIPART_XOP_SOAP1_1_FLAG |
protected static int |
MIME_MULTIPART_XOP_SOAP1_2_FLAG |
protected MimeMultipart |
mmp |
protected MimeMultipart |
multiPart |
protected static int |
PLAIN_XML_FLAG |
protected Map<String,Object> |
properties |
protected boolean |
saved |
protected static int |
SOAP1_1_FLAG |
protected static int |
SOAP1_2_FLAG |
protected SOAPPartImpl |
soapPartImpl |
protected static int |
XOP_FLAG |
CHARACTER_SET_ENCODING, WRITE_XML_DECLARATIONDEFAULT_SOAP_PROTOCOL, DYNAMIC_SOAP_PROTOCOL, SOAP_1_1_CONTENT_TYPE, SOAP_1_1_PROTOCOL, SOAP_1_2_CONTENT_TYPE, SOAP_1_2_PROTOCOL, SOAP_DATAENCODINGUNKNOWN_FAULT, SOAP_ENV_PREFIX, SOAP_MUSTUNDERSTAND_FAULT, SOAP_RECEIVER_FAULT, SOAP_SENDER_FAULT, SOAP_VERSIONMISMATCH_FAULT, URI_NS_SOAP_1_1_ENVELOPE, URI_NS_SOAP_1_2_ENCODING, URI_NS_SOAP_1_2_ENVELOPE, URI_NS_SOAP_ENCODING, URI_NS_SOAP_ENVELOPE, URI_SOAP_1_2_ROLE_NEXT, URI_SOAP_1_2_ROLE_NONE, URI_SOAP_1_2_ROLE_ULTIMATE_RECEIVER, URI_SOAP_ACTOR_NEXT| Modifier | Constructor and Description |
|---|---|
protected |
MessageImpl()
Construct a new message.
|
protected |
MessageImpl(boolean isFastInfoset,
boolean acceptFastInfoset)
Construct a new message.
|
protected |
MessageImpl(MimeHeaders headers,
ContentType contentType,
int stat,
InputStream in)
Construct a message from an input stream.
|
|
MessageImpl(MimeHeaders headers,
ContentType ct,
int stat,
XMLStreamReader reader) |
protected |
MessageImpl(MimeHeaders headers,
InputStream in)
Construct a message from an input stream.
|
protected |
MessageImpl(SOAPMessage msg)
Shallow copy.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
acceptFastInfoset() |
void |
addAttachmentPart(AttachmentPart attachment)
Adds the given
AttachmentPart object to this SOAPMessage
object. |
int |
countAttachments()
Gets a count of the number of attachments in this message.
|
AttachmentPart |
createAttachmentPart()
Creates a new empty
AttachmentPart object. |
String |
getAction() |
AttachmentPart |
getAttachment(SOAPElement element)
Returns an
AttachmentPart object that is associated with an
attachment that is referenced by this SOAPElement or
null if no such attachment exists. |
Iterator<AttachmentPart> |
getAttachments()
Retrieves all the
AttachmentPart objects that are part of
this SOAPMessage object. |
Iterator<AttachmentPart> |
getAttachments(MimeHeaders headers)
Retrieves all the
AttachmentPart objects that have header
entries that match the specified headers. |
String |
getBaseType() |
String |
getCharset() |
String |
getContentDescription()
Retrieves a description of this
SOAPMessage object's
content. |
String |
getContentType() |
protected abstract String |
getExpectedAcceptHeader() |
protected abstract String |
getExpectedContentType() |
MimeHeaders |
getMimeHeaders()
Returns all the transport-specific MIME headers for this
SOAPMessage
object in a transport-independent fashion. |
Object |
getProperty(String property)
Retrieves value of the specified property.
|
SOAPBody |
getSOAPBody()
Gets the SOAP Body contained in this
SOAPMessage object. |
SOAPHeader |
getSOAPHeader()
Gets the SOAP Header contained in this
SOAPMessage
object. |
abstract SOAPPart |
getSOAPPart()
Gets the SOAP part of this
SOAPMessage object. |
protected abstract boolean |
isCorrectSoapVersion(int contentTypeId) |
boolean |
isFastInfoset() |
boolean |
isLazySoapBodyParsing() |
protected static boolean |
isSoap1_1Content(int stat) |
protected static boolean |
isSoap1_2Content(int stat)
Check whether it is SOAP 1.2 content.
|
void |
removeAllAttachments()
Removes all
AttachmentPart objects that have been added
to this SOAPMessage object. |
void |
removeAttachments(MimeHeaders headers)
Removes all the
AttachmentPart objects that have header
entries that match the specified headers. |
void |
saveChanges()
Updates this
SOAPMessage object with all the changes that
have been made to it. |
boolean |
saveRequired()
Indicates whether this
SOAPMessage object needs to have
the method saveChanges called on it. |
void |
setAction(String action) |
void |
setBaseType(String type) |
void |
setCharset(String charset) |
void |
setContentDescription(String description)
Sets the description of this
SOAPMessage object's
content with the given description. |
void |
setContentType(String type) |
void |
setIsFastInfoset(boolean value) |
void |
setLazyAttachments(boolean flag) |
void |
setProperty(String property,
Object value)
Associates the specified value with the specified property.
|
void |
writeTo(OutputStream out)
Writes this
SOAPMessage object to the given output
stream. |
createAttachmentPart, createAttachmentPartpublic static final String CONTENT_ID
public static final String CONTENT_LOCATION
protected static final Logger log
protected static final int PLAIN_XML_FLAG
protected static final int MIME_MULTIPART_FLAG
protected static final int SOAP1_1_FLAG
protected static final int SOAP1_2_FLAG
protected static final int MIME_MULTIPART_XOP_SOAP1_1_FLAG
protected static final int MIME_MULTIPART_XOP_SOAP1_2_FLAG
protected static final int XOP_FLAG
protected static final int FI_ENCODED_FLAG
protected MimeHeaders headers
protected ContentType contentType
protected SOAPPartImpl soapPartImpl
protected FinalArrayList<AttachmentPart> attachments
protected boolean saved
protected byte[] messageBytes
protected int messageByteCount
protected MimeMultipart multiPart
protected boolean attachmentsInitialized
protected boolean isFastInfoset
protected boolean acceptFastInfoset
protected MimeMultipart mmp
public static final String LAZY_SOAP_BODY_PARSING
protected MessageImpl()
protected MessageImpl(boolean isFastInfoset,
boolean acceptFastInfoset)
isFastInfoset - whether it is fast infosetacceptFastInfoset - whether to accept fast infosetprotected MessageImpl(SOAPMessage msg)
msg - SoapMessageprotected MessageImpl(MimeHeaders headers, InputStream in) throws SOAPExceptionImpl
headers - MimeHeadersin - InputStreamSOAPExceptionImpl - in case of I/O errorprotected MessageImpl(MimeHeaders headers, ContentType contentType, int stat, InputStream in) throws SOAPExceptionImpl
headers - headerscontentType - The parsed content type header from the headers variable.
This is redundant parameter, but it avoids reparsing this header again.stat - The result of identifyContentType(ContentType) over
the contentType parameter. This redundant parameter, but it avoids
recomputing this information again.in - input streamSOAPExceptionImpl - in case of an errorpublic MessageImpl(MimeHeaders headers, ContentType ct, int stat, XMLStreamReader reader) throws SOAPExceptionImpl
SOAPExceptionImplprotected static boolean isSoap1_1Content(int stat)
stat - the mask value obtained from identifyContentType(ContentType)protected static boolean isSoap1_2Content(int stat)
stat - the mask value obtained from identifyContentType(ContentType)public boolean isFastInfoset()
public boolean acceptFastInfoset()
public void setIsFastInfoset(boolean value)
public boolean isLazySoapBodyParsing()
public Object getProperty(String property)
SOAPMessagegetProperty in class SOAPMessageproperty - the name of the property to retrievenull
if no such property exists.public void setProperty(String property, Object value)
SOAPMessage
The valid property names include
SOAPMessage.WRITE_XML_DECLARATION and
SOAPMessage.CHARACTER_SET_ENCODING. All of these standard SAAJ
properties are prefixed by "javax.xml.soap". Vendors may also add
implementation specific properties. These properties must be prefixed
with package names that are unique to the vendor.
Setting the property WRITE_XML_DECLARATION to "true"
will cause an XML Declaration to be written out at the start of the SOAP
message. The default value of "false" suppresses this declaration.
The property CHARACTER_SET_ENCODING defaults to the value
"utf-8" which causes the SOAP message to be encoded using
UTF-8. Setting CHARACTER_SET_ENCODING to "utf-16"
causes the SOAP message to be encoded using UTF-16.
Some implementations may allow encodings in addition to UTF-8 and UTF-16. Refer to your vendor's documentation for details.
setProperty in class SOAPMessageproperty - the property with which the specified value is to be
associated.value - the value to be associated with the specified propertyprotected abstract boolean isCorrectSoapVersion(int contentTypeId)
protected abstract String getExpectedContentType()
protected abstract String getExpectedAcceptHeader()
public MimeHeaders getMimeHeaders()
SOAPMessageSOAPMessage
object in a transport-independent fashion.getMimeHeaders in class SOAPMessageMimeHeaders object containing the MimeHeader
objectspublic String getContentType()
public void setContentType(String type)
public String getBaseType()
public void setBaseType(String type)
public String getAction()
public void setAction(String action)
public String getCharset()
public void setCharset(String charset)
public boolean saveRequired()
SOAPMessageSOAPMessage object needs to have
the method saveChanges called on it.saveRequired in class SOAPMessagetrue if saveChanges needs to be
called; false otherwise.public String getContentDescription()
SOAPMessageSOAPMessage object's
content.getContentDescription in class SOAPMessageString describing the content of this
message or null if no description has been setSOAPMessage.setContentDescription(java.lang.String)public void setContentDescription(String description)
SOAPMessageSOAPMessage object's
content with the given description.setContentDescription in class SOAPMessagedescription - a String describing the content of this
messageSOAPMessage.getContentDescription()public abstract SOAPPart getSOAPPart()
SOAPMessageSOAPMessage object.
SOAPMessage object contains one or more attachments, the
SOAP Part must be the first MIME body part in the message.
getSOAPPart in class SOAPMessageSOAPPart object for this SOAPMessage
objectpublic void removeAllAttachments()
SOAPMessageAttachmentPart objects that have been added
to this SOAPMessage object.
This method does not touch the SOAP part.
removeAllAttachments in class SOAPMessagepublic int countAttachments()
SOAPMessagecountAttachments in class SOAPMessageAttachmentPart objects that are
part of this SOAPMessage objectpublic void addAttachmentPart(AttachmentPart attachment)
SOAPMessageAttachmentPart object to this SOAPMessage
object. An AttachmentPart object must be created before
it can be added to a message.addAttachmentPart in class SOAPMessageattachment - an AttachmentPart object that is to become part
of this SOAPMessage objectpublic Iterator<AttachmentPart> getAttachments()
SOAPMessageAttachmentPart objects that are part of
this SOAPMessage object.getAttachments in class SOAPMessagepublic Iterator<AttachmentPart> getAttachments(MimeHeaders headers)
SOAPMessageAttachmentPart objects that have header
entries that match the specified headers. Note that a returned
attachment could have headers in addition to those specified.getAttachments in class SOAPMessageheaders - a MimeHeaders object containing the MIME
headers for which to searchpublic void removeAttachments(MimeHeaders headers)
SOAPMessageAttachmentPart objects that have header
entries that match the specified headers. Note that the removed
attachment could have headers in addition to those specified.removeAttachments in class SOAPMessageheaders - a MimeHeaders object containing the MIME
headers for which to searchpublic AttachmentPart createAttachmentPart()
SOAPMessageAttachmentPart object. Note that the
method addAttachmentPart must be called with this new
AttachmentPart object as the parameter in order for it to
become an attachment to this SOAPMessage object.createAttachmentPart in class SOAPMessageAttachmentPart object that can be populated
and added to this SOAPMessage objectpublic AttachmentPart getAttachment(SOAPElement element) throws SOAPException
SOAPMessageAttachmentPart object that is associated with an
attachment that is referenced by this SOAPElement or
null if no such attachment exists. References can be made
via an href attribute as described in
SOAP Messages with Attachments,
or via a single Text child node containing a URI as
described in the WS-I Attachments Profile 1.0 for elements of schema
type ref:swaRef(ref:swaRef). These two mechanisms must be supported.
The support for references via href attribute also implies that
this method should also be supported on an element that is an
xop:Include element (
XOP).
other reference mechanisms may be supported by individual
implementations of this standard. Contact your vendor for details.getAttachment in class SOAPMessageelement - The SOAPElement containing the reference to an AttachmentAttachmentPart or null if no such
AttachmentPart exists or no reference can be
found in this SOAPElement.SOAPException - if there is an error in the attempt to access the
attachmentpublic void saveChanges()
throws SOAPException
SOAPMessageSOAPMessage object with all the changes that
have been made to it. This method is called automatically when
SOAPMessage.writeTo(OutputStream) is called. However, if
changes are made to a message that was received or to one that has
already been sent, the method saveChanges needs to be
called explicitly in order to save the changes. The method saveChanges
also generates any changes that can be read back (for example, a
MessageId in profiles that support a message id). All MIME headers in a
message that is created for sending purposes are guaranteed to have
valid values only after saveChanges has been called.
In addition, this method marks the point at which the data from all
constituent AttachmentPart objects are pulled into the
message.
saveChanges in class SOAPMessageSOAPExceptionpublic void writeTo(OutputStream out) throws SOAPException, IOException
SOAPMessageSOAPMessage object to the given output
stream. The externalization format is as defined by the SOAP 1.1 with
Attachments specification.
If there are no attachments, just an XML stream is written out. For
those messages that have attachments, writeTo writes a
MIME-encoded byte stream.
Note that this method does not write the transport-specific MIME Headers of the Message
writeTo in class SOAPMessageout - the OutputStream object to which this SOAPMessage
object will be writtenSOAPException - if there was a problem in externalizing this SOAP messageIOException - if an I/O error occurspublic SOAPBody getSOAPBody() throws SOAPException
SOAPMessageSOAPMessage object.
getSOAPBody in class SOAPMessageSOAPBody object contained by this SOAPMessage
objectSOAPException - if the SOAP Body does not exist or cannot be retrievedpublic SOAPHeader getSOAPHeader() throws SOAPException
SOAPMessageSOAPMessage
object.
getSOAPHeader in class SOAPMessageSOAPHeader object contained by this SOAPMessage
objectSOAPException - if the SOAP Header does not exist or cannot be retrievedpublic void setLazyAttachments(boolean flag)
Copyright © 2019 JBoss by Red Hat. All rights reserved.