org.apache.axis.message
Class SOAPHeader

java.lang.Object
  extended by org.apache.axis.message.NodeImpl
      extended by org.apache.axis.message.MessageElement
          extended by org.apache.axis.message.SOAPHeader
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, SOAPElement, SOAPHeader, org.w3c.dom.Element, org.w3c.dom.Node, org.w3c.dom.NodeList

public class SOAPHeader
extends MessageElement
implements SOAPHeader

Holder for header elements.

Author:
Glyn Normington (glyn@apache.org)
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.axis.message.MessageElement
MessageElement.QNameAttr
 
Field Summary
 
Fields inherited from class org.apache.axis.message.MessageElement
_isRoot, context, encodingStyle, endEventIndex, fixupDeserializer, href, id, message, namespaces, qNameAttrs, recorder, startContentsIndex, startEventIndex, typeQName
 
Fields inherited from class org.apache.axis.message.NodeImpl
_isDirty, attributes, children, document, name, namespaceURI, parent, prefix, textRep
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Constructor Summary
SOAPHeader(java.lang.String namespace, java.lang.String localPart, java.lang.String prefix, org.xml.sax.Attributes attributes, DeserializationContext context, SOAPConstants soapConsts)
           
 
Method Summary
 void addChild(MessageElement element)
          Note that this method will log a error and no-op if there is a value (set using setObjectValue) in the MessageElement.
 SOAPElement addChildElement(Name name)
          add the child element
 SOAPElement addChildElement(SOAPElement element)
          The added child must be an instance of MessageElement rather than an abitrary SOAPElement otherwise a (wrapped) ClassCastException will be thrown.
 SOAPElement addChildElement(java.lang.String localName)
          add a child element in the message element's own namespace
 SOAPElement addChildElement(java.lang.String localName, java.lang.String prefix)
          add a child element
 SOAPElement addChildElement(java.lang.String localName, java.lang.String prefix, java.lang.String uri)
          add a child element
 SOAPHeaderElement addHeaderElement(Name name)
          Creates a new SOAPHeaderElement object initialized with the specified name and adds it to this SOAPHeader object.
 org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild)
          Adds the node newChild to the end of the list of children of this node.
 java.util.Iterator examineAllHeaderElements()
          Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object.
 java.util.Iterator examineHeaderElements(java.lang.String actor)
          Returns a list of all the SOAPHeaderElement objects in this SOAPHeader object that have the the specified actor.
 java.util.Iterator examineMustUnderstandHeaderElements(java.lang.String actor)
          Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object that have the specified actor and that have a MustUnderstand attribute whose value is equivalent to true.
 java.util.Iterator extractAllHeaderElements()
          Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object and detaches them from this SOAPHeader object.
 java.util.Iterator extractHeaderElements(java.lang.String actor)
          Returns a list of all the SOAPHeaderElement objects in this SOAPHeader object that have the the specified actor and detaches them from this SOAPHeader object.
protected  void outputImpl(SerializationContext context)
          override point -output to a serialization context.
 void setParentElement(SOAPElement parent)
          Sets the parent of this Node object to the given SOAPElement object.
 
Methods inherited from class org.apache.axis.message.MessageElement
addAttribute, addAttribute, addAttribute, addAttribute, addMapping, addNamespaceDeclaration, addTextNode, childDeepCloned, cloneNode, cloning, detachAllChildren, equals, findElement, getAllAttributes, getAsDocument, getAsDOM, getAsString, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributesEx, getAttributeValue, getAttributeValue, getChildElement, getChildElements, getChildElements, getChildElements, getChildren, getCompleteAttributes, getDeserializationContext, getElementName, getElementsByTagName, getElementsByTagNameNS, getElementsNS, getEncodingStyle, getEnvelope, getFixupDeserializer, getHref, getID, getLength, getName, getNamespacePrefixes, getNamespaceURI, getObjectValue, getObjectValue, getOwnerDocument, getPrefix, getQName, getRealElement, getRecorder, getTagName, getType, getValue, getValueAsType, getValueAsType, getValueDOM, getVisibleNamespacePrefixes, hasAttribute, hasAttributeNS, isRoot, item, output, publishContents, publishToHandler, removeAttribute, removeAttribute, removeAttributeNode, removeAttributeNS, removeContents, removeNamespaceDeclaration, setAllAttributes, setAttribute, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setContentsIndex, setEncodingStyle, setEndIndex, setEnvelope, setFixupDeserializer, setName, setNamespaceURI, setNSMappings, setObjectValue, setQName, setRecorder, setType, setValue, toString
 
Methods inherited from class org.apache.axis.message.NodeImpl
compareDocumentPosition, convertAttrSAXtoDOM, detachNode, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getParent, getParentElement, getParentNode, getPrefix, getPreviousSibling, getSchemaTypeInfo, getTextContent, getUserData, hasAttributes, hasChildNodes, initializeChildren, insertBefore, isDefaultNamespace, isDirty, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, makeAttributesEditable, normalize, recycleNode, removeChild, replaceChild, setDirty, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setNodeValue, setOwnerDocument, setParent, setPrefix, setTextContent, setUserData
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.xml.soap.SOAPElement
addAttribute, addNamespaceDeclaration, addTextNode, getAllAttributes, getAttributeValue, getChildElements, getChildElements, getElementName, getEncodingStyle, getNamespacePrefixes, getNamespaceURI, getVisibleNamespacePrefixes, removeAttribute, removeContents, removeNamespaceDeclaration, setEncodingStyle
 
Methods inherited from interface javax.xml.soap.Node
detachNode, getParentElement, getValue, recycleNode, setValue
 
Methods inherited from interface org.w3c.dom.Element
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
 
Methods inherited from interface org.w3c.dom.Node
cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

Constructor Detail

SOAPHeader

public SOAPHeader(java.lang.String namespace,
                  java.lang.String localPart,
                  java.lang.String prefix,
                  org.xml.sax.Attributes attributes,
                  DeserializationContext context,
                  SOAPConstants soapConsts)
           throws AxisFault
Throws:
AxisFault
Method Detail

setParentElement

public void setParentElement(SOAPElement parent)
                      throws SOAPException
Description copied from class: NodeImpl
Sets the parent of this Node object to the given SOAPElement object.

Overrides:
setParentElement in class NodeImpl
Parameters:
parent - the SOAPElement object to be set as the parent of this Node object
Throws:
SOAPException - if there is a problem in setting the parent to the given element
See Also:
getParentElement()

addHeaderElement

public SOAPHeaderElement addHeaderElement(Name name)
                                   throws SOAPException
Description copied from interface: SOAPHeader
Creates a new SOAPHeaderElement object initialized with the specified name and adds it to this SOAPHeader object.

Specified by:
addHeaderElement in interface SOAPHeader
Parameters:
name - a Name object with the name of the new SOAPHeaderElement object
Returns:
the new SOAPHeaderElement object that was inserted into this SOAPHeader object
Throws:
SOAPException - if a SOAP error occurs

examineHeaderElements

public java.util.Iterator examineHeaderElements(java.lang.String actor)
Description copied from interface: SOAPHeader
Returns a list of all the SOAPHeaderElement objects in this SOAPHeader object that have the the specified actor. An actor is a global attribute that indicates the intermediate parties to whom the message should be sent. An actor receives the message and then sends it to the next actor. The default actor is the ultimate intended recipient for the message, so if no actor attribute is included in a SOAPHeader object, the message is sent to its ultimate destination.

Specified by:
examineHeaderElements in interface SOAPHeader
Parameters:
actor - a String giving the URI of the actor for which to search
Returns:
an Iterator object over all the SOAPHeaderElement objects that contain the specified actor
See Also:
extractHeaderElements(java.lang.String)

extractHeaderElements

public java.util.Iterator extractHeaderElements(java.lang.String actor)
Description copied from interface: SOAPHeader
Returns a list of all the SOAPHeaderElement objects in this SOAPHeader object that have the the specified actor and detaches them from this SOAPHeader object.

This method allows an actor to process only the parts of the SOAPHeader object that apply to it and to remove them before passing the message on to the next actor.

Specified by:
extractHeaderElements in interface SOAPHeader
Parameters:
actor - a String giving the URI of the actor for which to search
Returns:
an Iterator object over all the SOAPHeaderElement objects that contain the specified actor
See Also:
examineHeaderElements(java.lang.String)

examineMustUnderstandHeaderElements

public java.util.Iterator examineMustUnderstandHeaderElements(java.lang.String actor)
Description copied from interface: SOAPHeader
Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object that have the specified actor and that have a MustUnderstand attribute whose value is equivalent to true.

Specified by:
examineMustUnderstandHeaderElements in interface SOAPHeader
Parameters:
actor - a String giving the URI of the actor for which to search
Returns:
an Iterator object over all the SOAPHeaderElement objects that contain the specified actor and are marked as MustUnderstand

examineAllHeaderElements

public java.util.Iterator examineAllHeaderElements()
Description copied from interface: SOAPHeader
Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object.

Specified by:
examineAllHeaderElements in interface SOAPHeader
Returns:
an Iterator object over all the SOAPHeaderElement objects contained by this SOAPHeader

extractAllHeaderElements

public java.util.Iterator extractAllHeaderElements()
Description copied from interface: SOAPHeader
Returns an Iterator over all the SOAPHeaderElement objects in this SOAPHeader object and detaches them from this SOAPHeader object.

Specified by:
extractAllHeaderElements in interface SOAPHeader
Returns:
an Iterator object over all the SOAPHeaderElement objects contained by this SOAPHeader

outputImpl

protected void outputImpl(SerializationContext context)
                   throws java.lang.Exception
Description copied from class: MessageElement
override point -output to a serialization context.

Overrides:
outputImpl in class MessageElement
Parameters:
context - destination.
Throws:
java.lang.Exception - if something went wrong.

addChild

public void addChild(MessageElement element)
              throws SOAPException
Description copied from class: MessageElement
Note that this method will log a error and no-op if there is a value (set using setObjectValue) in the MessageElement.

Overrides:
addChild in class MessageElement
Throws:
SOAPException

addChildElement

public SOAPElement addChildElement(SOAPElement element)
                            throws SOAPException
Description copied from class: MessageElement
The added child must be an instance of MessageElement rather than an abitrary SOAPElement otherwise a (wrapped) ClassCastException will be thrown.

Specified by:
addChildElement in interface SOAPElement
Overrides:
addChildElement in class MessageElement
Parameters:
element - the SOAPElement to be added as a new child
Returns:
an instance representing the new SOAP element that was actually added to the tree.
Throws:
SOAPException - if there was an error in adding this element as a child
See Also:
SOAPElement.addChildElement(javax.xml.soap.SOAPElement)

addChildElement

public SOAPElement addChildElement(Name name)
                            throws SOAPException
Description copied from class: MessageElement
add the child element

Specified by:
addChildElement in interface SOAPElement
Overrides:
addChildElement in class MessageElement
Parameters:
name - uri, prefix and local name of the element to add
Returns:
the child element
Throws:
SOAPException - if there is an error in creating the SOAPElement object
See Also:
SOAPElement.addChildElement(javax.xml.soap.Name)

addChildElement

public SOAPElement addChildElement(java.lang.String localName)
                            throws SOAPException
Description copied from class: MessageElement
add a child element in the message element's own namespace

Specified by:
addChildElement in interface SOAPElement
Overrides:
addChildElement in class MessageElement
Parameters:
localName - a String giving the local name for the element
Returns:
the child element
Throws:
SOAPException - if there is an error in creating the SOAPElement object
See Also:
SOAPElement.addChildElement(String)

addChildElement

public SOAPElement addChildElement(java.lang.String localName,
                                   java.lang.String prefix)
                            throws SOAPException
Description copied from class: MessageElement
add a child element

Specified by:
addChildElement in interface SOAPElement
Overrides:
addChildElement in class MessageElement
Parameters:
localName - a String giving the local name for the new element
prefix - a String giving the namespace prefix for the new element
Returns:
the child element
Throws:
SOAPException - if there is an error in creating the SOAPElement object
See Also:
SOAPElement.addChildElement(String, String)

addChildElement

public SOAPElement addChildElement(java.lang.String localName,
                                   java.lang.String prefix,
                                   java.lang.String uri)
                            throws SOAPException
Description copied from class: MessageElement
add a child element

Specified by:
addChildElement in interface SOAPElement
Overrides:
addChildElement in class MessageElement
Parameters:
localName - a String giving the local name for the new element
prefix - a String giving the namespace prefix for the new element
uri - a String giving the URI of the namespace to which the new element belongs
Returns:
the child element
Throws:
SOAPException - if there is an error in creating the SOAPElement object
See Also:
SOAPElement.addChildElement(String, String, String)

appendChild

public org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild)
                             throws org.w3c.dom.DOMException
Description copied from class: NodeImpl
Adds the node newChild to the end of the list of children of this node. If the newChild is already in the tree, it is first removed.

Specified by:
appendChild in interface org.w3c.dom.Node
Overrides:
appendChild in class NodeImpl
Parameters:
newChild - The node to add.If it is a DocumentFragment object, the entire contents of the document fragment are moved into the child list of this node
Returns:
The node added.
Throws:
org.w3c.dom.DOMException - HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to append is one of this node's ancestors or this node itself.
WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or if the previous parent of the node being inserted is readonly.


Copyright ? 2005 Apache Web Services Project. All Rights Reserved.