org.apache.axiom.om.impl.dom
Class TextImpl

java.lang.Object
  extended by org.apache.axiom.om.impl.dom.NodeImpl
      extended by org.apache.axiom.om.impl.dom.ChildNode
          extended by org.apache.axiom.om.impl.dom.CharacterImpl
              extended by org.apache.axiom.om.impl.dom.TextImpl
All Implemented Interfaces:
java.lang.Cloneable, org.apache.axiom.om.impl.OMNodeEx, org.apache.axiom.om.OMNode, org.apache.axiom.om.OMText, org.w3c.dom.CharacterData, org.w3c.dom.Node, org.w3c.dom.NodeList, org.w3c.dom.Text

public class TextImpl
extends CharacterImpl
implements org.w3c.dom.Text, org.apache.axiom.om.OMText


Field Summary
protected  org.apache.axiom.om.OMAttribute attribute
          Field attribute is used when serializing Binary stuff as MTOM optimized.
protected  char[] charArray
           
private  java.lang.String contentID
           
private  java.lang.Object dataHandlerObject
          Field dataHandler contains the DataHandler.
private  boolean isBinary
           
protected  java.lang.String localName
          Field localName is used when serializing Binary stuff as MTOM optimized.
private  java.lang.String mimeType
           
protected  org.apache.axiom.om.OMNamespace ns
          Field nameSpace is used when serializing Binary stuff as MTOM optimized.
private  boolean optimize
           
protected  org.apache.axiom.om.OMNamespace textNS
           
static org.apache.axiom.om.OMNamespace XOP_NS
          Field nameSpace used when serializing Binary stuff as MTOM optimized.
 
Fields inherited from class org.apache.axiom.om.impl.dom.CharacterImpl
textValue
 
Fields inherited from class org.apache.axiom.om.impl.dom.ChildNode
nextSibling, parentNode, previousSibling
 
Fields inherited from class org.apache.axiom.om.impl.dom.NodeImpl
builder, done, factory, FIRSTCHILD, flags, NORMALIZED, OWNED, ownerNode, READONLY, SPECIFIED
 
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
 
Fields inherited from interface org.apache.axiom.om.OMNode
CDATA_SECTION_NODE, COMMENT_NODE, DTD_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, PI_NODE, SPACE_NODE, TEXT_NODE
 
Constructor Summary
TextImpl(DocumentImpl ownerNode, char[] value, org.apache.axiom.om.OMFactory factory)
           
TextImpl(DocumentImpl ownerNode, java.lang.Object dataHandler, boolean optimize, org.apache.axiom.om.OMFactory factory)
           
TextImpl(DocumentImpl ownerNode, org.apache.axiom.om.OMFactory factory)
           
TextImpl(DocumentImpl ownerNode, java.lang.String value, org.apache.axiom.om.OMFactory factory)
           
TextImpl(DocumentImpl ownerNode, java.lang.String value, java.lang.String mimeType, boolean optimize, org.apache.axiom.om.OMFactory factory)
           
TextImpl(org.apache.axiom.om.OMContainer parent, javax.xml.namespace.QName text, int nodeType, org.apache.axiom.om.OMFactory factory)
           
TextImpl(org.apache.axiom.om.OMContainer parent, javax.xml.namespace.QName text, org.apache.axiom.om.OMFactory factory)
           
TextImpl(org.apache.axiom.om.OMContainer parent, TextImpl source, org.apache.axiom.om.OMFactory factory)
          Construct TextImpl that is a copy of the source OMTextImpl
TextImpl(java.lang.String contentID, org.apache.axiom.om.OMContainer parent, org.apache.axiom.om.OMXMLParserWrapper builder, org.apache.axiom.om.OMFactory factory)
           
TextImpl(java.lang.String text, org.apache.axiom.om.OMFactory factory)
          Creates a text node with the given text required by the OMDOMFactory.
TextImpl(java.lang.String text, java.lang.String mimeType, boolean optimize, boolean isBinary, org.apache.axiom.om.OMFactory factory)
           
TextImpl(java.lang.String text, java.lang.String mimeType, boolean optimize, org.apache.axiom.om.OMFactory factory)
           
 
Method Summary
 void buildWithAttachments()
          Parses this node and builds the object structure in memory.
 org.w3c.dom.Node cloneNode(boolean deep)
           
 void discard()
           
 java.lang.String getContentID()
           
 java.lang.String getData()
          Returns the value of the data.
 java.lang.Object getDataHandler()
           
 java.io.InputStream getInputStream()
           
 java.lang.String getLocalName()
           
 org.apache.axiom.om.OMNamespace getNamespace()
           
 java.lang.String getNodeName()
           
 short getNodeType()
           
 java.lang.String getNodeValue()
           
 java.lang.String getText()
           
 javax.xml.namespace.QName getTextAsQName()
           
 char[] getTextCharacters()
           
private  java.lang.String getTextFromProperPlace()
           
private  java.lang.String getTextString()
           
 int getType()
           
 java.lang.String getWholeText()
           
 void internalSerialize(javax.xml.stream.XMLStreamWriter writer)
           
 void internalSerializeAndConsume(javax.xml.stream.XMLStreamWriter writer)
           
private  void internalSerializeLocal(javax.xml.stream.XMLStreamWriter writer2)
           
 boolean isBinary()
           
 boolean isCharacters()
           
 boolean isElementContentWhitespace()
           
 boolean isOptimized()
           
 org.w3c.dom.Text replaceWholeText(java.lang.String arg0)
           
(package private) static void serializeAttribute(org.apache.axiom.om.OMAttribute attr, javax.xml.stream.XMLStreamWriter writer)
          Method serializeAttribute.
(package private) static void serializeNamespace(org.apache.axiom.om.OMNamespace namespace, javax.xml.stream.XMLStreamWriter writer)
          Method serializeNamespace.
private  void serializeStartpart(javax.xml.stream.XMLStreamWriter writer)
           
 void setBinary(boolean value)
          Receiving binary can happen as either MTOM attachments or as Base64 Text In the case of Base64 user has to explicitly specify that the content is binary, before calling getDataHandler(), getInputStream()....
 void setOptimize(boolean value)
           
 void setType(int nodeType)
           
 org.w3c.dom.Text splitText(int offset)
          Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings.
 java.lang.String toString()
           
private  void writeOutput(javax.xml.stream.XMLStreamWriter writer)
          Writes the relevant output.
 
Methods inherited from class org.apache.axiom.om.impl.dom.CharacterImpl
appendData, deleteData, getLength, insertData, replaceData, setData, substringData
 
Methods inherited from class org.apache.axiom.om.impl.dom.ChildNode
detach, getNextOMSibling, getNextSibling, getParent, getParentNode, getPreviousOMSibling, getPreviousSibling, insertSiblingAfter, insertSiblingBefore, setNextOMSibling, setParent, setPreviousOMSibling
 
Methods inherited from class org.apache.axiom.om.impl.dom.NodeImpl
appendChild, build, close, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getNamespaceURI, getOMFactory, getOwnerDocument, getPrefix, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, internalSerializeWithCache, isComplete, isDefaultNamespace, isEqualNode, isFirstChild, isFirstChild, isNormalized, isNormalized, isOwned, isOwned, isReadonly, isReadonly, isSameNode, isSpecified, isSpecified, isSupported, item, lookupNamespaceURI, lookupPrefix, normalize, parentNode, removeChild, replaceChild, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, setComplete, setNodeValue, setOwnerDocument, setPrefix, setTextContent, setUserData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.w3c.dom.CharacterData
appendData, deleteData, getLength, insertData, replaceData, setData, substringData
 
Methods inherited from interface org.w3c.dom.Node
appendChild, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getNamespaceURI, getNextSibling, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 
Methods inherited from interface org.apache.axiom.om.OMNode
build, close, detach, getNextOMSibling, getOMFactory, getParent, getPreviousOMSibling, insertSiblingAfter, insertSiblingBefore, isComplete, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume
 

Field Detail

mimeType

private java.lang.String mimeType

optimize

private boolean optimize

isBinary

private boolean isBinary

contentID

private java.lang.String contentID

textNS

protected org.apache.axiom.om.OMNamespace textNS

charArray

protected char[] charArray

dataHandlerObject

private java.lang.Object dataHandlerObject
Field dataHandler contains the DataHandler. Declaring as Object to remove the dependency on Javax.activation.DataHandler


ns

protected org.apache.axiom.om.OMNamespace ns
Field nameSpace is used when serializing Binary stuff as MTOM optimized.


localName

protected java.lang.String localName
Field localName is used when serializing Binary stuff as MTOM optimized.


attribute

protected org.apache.axiom.om.OMAttribute attribute
Field attribute is used when serializing Binary stuff as MTOM optimized.


XOP_NS

public static final org.apache.axiom.om.OMNamespace XOP_NS
Field nameSpace used when serializing Binary stuff as MTOM optimized.

Constructor Detail

TextImpl

public TextImpl(java.lang.String text,
                org.apache.axiom.om.OMFactory factory)
Creates a text node with the given text required by the OMDOMFactory. The owner document should be set properly when appending this to a DOM tree.

Parameters:
text -

TextImpl

public TextImpl(java.lang.String contentID,
                org.apache.axiom.om.OMContainer parent,
                org.apache.axiom.om.OMXMLParserWrapper builder,
                org.apache.axiom.om.OMFactory factory)
Parameters:
contentID -
parent -
builder - Used when the builder is encountered with a XOP:Include tag Stores a reference to the builder and the content-id. Supports deffered parsing of MIME messages

TextImpl

public TextImpl(org.apache.axiom.om.OMContainer parent,
                TextImpl source,
                org.apache.axiom.om.OMFactory factory)
Construct TextImpl that is a copy of the source OMTextImpl

Parameters:
parent -
source - TextImpl
factory -

TextImpl

public TextImpl(java.lang.String text,
                java.lang.String mimeType,
                boolean optimize,
                org.apache.axiom.om.OMFactory factory)

TextImpl

public TextImpl(java.lang.String text,
                java.lang.String mimeType,
                boolean optimize,
                boolean isBinary,
                org.apache.axiom.om.OMFactory factory)

TextImpl

public TextImpl(DocumentImpl ownerNode,
                java.lang.Object dataHandler,
                boolean optimize,
                org.apache.axiom.om.OMFactory factory)
Parameters:
dataHandler -
optimize - To send binary content. Created progrmatically.

TextImpl

public TextImpl(DocumentImpl ownerNode,
                org.apache.axiom.om.OMFactory factory)
Parameters:
ownerNode -

TextImpl

public TextImpl(DocumentImpl ownerNode,
                java.lang.String value,
                org.apache.axiom.om.OMFactory factory)
Parameters:
ownerNode -
value -

TextImpl

public TextImpl(DocumentImpl ownerNode,
                char[] value,
                org.apache.axiom.om.OMFactory factory)

TextImpl

public TextImpl(DocumentImpl ownerNode,
                java.lang.String value,
                java.lang.String mimeType,
                boolean optimize,
                org.apache.axiom.om.OMFactory factory)
Parameters:
ownerNode -
value -

TextImpl

public TextImpl(org.apache.axiom.om.OMContainer parent,
                javax.xml.namespace.QName text,
                org.apache.axiom.om.OMFactory factory)

TextImpl

public TextImpl(org.apache.axiom.om.OMContainer parent,
                javax.xml.namespace.QName text,
                int nodeType,
                org.apache.axiom.om.OMFactory factory)
Method Detail

splitText

public org.w3c.dom.Text splitText(int offset)
                           throws org.w3c.dom.DOMException
Breaks this node into two nodes at the specified offset, keeping both in the tree as siblings. After being split, this node will contain all the content up to the offset point. A new node of the same type, which contains all the content at and after the offset point, is returned. If the original node had a parent node, the new node is inserted as the next sibling of the original node. When the offset is equal to the length of this node, the new node has no data.

Specified by:
splitText in interface org.w3c.dom.Text
Throws:
org.w3c.dom.DOMException

getNodeName

public java.lang.String getNodeName()
Specified by:
getNodeName in interface org.w3c.dom.Node

getNodeType

public short getNodeType()
Specified by:
getNodeType in interface org.w3c.dom.Node

getType

public int getType()
            throws org.apache.axiom.om.OMException
Specified by:
getType in interface org.apache.axiom.om.OMNode
Throws:
org.apache.axiom.om.OMException

setType

public void setType(int nodeType)
             throws org.apache.axiom.om.OMException
Specified by:
setType in interface org.apache.axiom.om.impl.OMNodeEx
Throws:
org.apache.axiom.om.OMException

internalSerialize

public void internalSerialize(javax.xml.stream.XMLStreamWriter writer)
                       throws javax.xml.stream.XMLStreamException
Specified by:
internalSerialize in interface org.apache.axiom.om.impl.OMNodeEx
Throws:
javax.xml.stream.XMLStreamException

internalSerializeAndConsume

public void internalSerializeAndConsume(javax.xml.stream.XMLStreamWriter writer)
                                 throws javax.xml.stream.XMLStreamException
Specified by:
internalSerializeAndConsume in interface org.apache.axiom.om.impl.OMNodeEx
Throws:
javax.xml.stream.XMLStreamException

isOptimized

public boolean isOptimized()
Specified by:
isOptimized in interface org.apache.axiom.om.OMText

setOptimize

public void setOptimize(boolean value)
Specified by:
setOptimize in interface org.apache.axiom.om.OMText

discard

public void discard()
             throws org.apache.axiom.om.OMException
Specified by:
discard in interface org.apache.axiom.om.OMNode
Overrides:
discard in class ChildNode
Throws:
org.apache.axiom.om.OMException

writeOutput

private void writeOutput(javax.xml.stream.XMLStreamWriter writer)
                  throws javax.xml.stream.XMLStreamException
Writes the relevant output.

Parameters:
writer -
Throws:
javax.xml.stream.XMLStreamException

getText

public java.lang.String getText()
Specified by:
getText in interface org.apache.axiom.om.OMText

getData

public java.lang.String getData()
                         throws org.w3c.dom.DOMException
Description copied from class: CharacterImpl
Returns the value of the data.

Specified by:
getData in interface org.w3c.dom.CharacterData
Overrides:
getData in class CharacterImpl
Throws:
org.w3c.dom.DOMException

getTextCharacters

public char[] getTextCharacters()
Specified by:
getTextCharacters in interface org.apache.axiom.om.OMText

isCharacters

public boolean isCharacters()
Specified by:
isCharacters in interface org.apache.axiom.om.OMText

getTextFromProperPlace

private java.lang.String getTextFromProperPlace()

getTextString

private java.lang.String getTextString()

getTextAsQName

public javax.xml.namespace.QName getTextAsQName()
Specified by:
getTextAsQName in interface org.apache.axiom.om.OMText

getNodeValue

public java.lang.String getNodeValue()
                              throws org.w3c.dom.DOMException
Specified by:
getNodeValue in interface org.w3c.dom.Node
Overrides:
getNodeValue in class NodeImpl
Throws:
org.w3c.dom.DOMException

getContentID

public java.lang.String getContentID()
Specified by:
getContentID in interface org.apache.axiom.om.OMText

getDataHandler

public java.lang.Object getDataHandler()
Specified by:
getDataHandler in interface org.apache.axiom.om.OMText

getInputStream

public java.io.InputStream getInputStream()
                                   throws org.apache.axiom.om.OMException
Throws:
org.apache.axiom.om.OMException

internalSerializeLocal

private void internalSerializeLocal(javax.xml.stream.XMLStreamWriter writer2)
                             throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

serializeStartpart

private void serializeStartpart(javax.xml.stream.XMLStreamWriter writer)
                         throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

serializeAttribute

static void serializeAttribute(org.apache.axiom.om.OMAttribute attr,
                               javax.xml.stream.XMLStreamWriter writer)
                        throws javax.xml.stream.XMLStreamException
Method serializeAttribute.

Parameters:
attr -
writer -
Throws:
javax.xml.stream.XMLStreamException

serializeNamespace

static void serializeNamespace(org.apache.axiom.om.OMNamespace namespace,
                               javax.xml.stream.XMLStreamWriter writer)
                        throws javax.xml.stream.XMLStreamException
Method serializeNamespace.

Parameters:
namespace -
writer -
Throws:
javax.xml.stream.XMLStreamException

cloneNode

public org.w3c.dom.Node cloneNode(boolean deep)
Specified by:
cloneNode in interface org.w3c.dom.Node
Overrides:
cloneNode in class ChildNode

getLocalName

public java.lang.String getLocalName()
Specified by:
getLocalName in interface org.w3c.dom.Node
Overrides:
getLocalName in class NodeImpl

getWholeText

public java.lang.String getWholeText()
Specified by:
getWholeText in interface org.w3c.dom.Text

isElementContentWhitespace

public boolean isElementContentWhitespace()
Specified by:
isElementContentWhitespace in interface org.w3c.dom.Text

replaceWholeText

public org.w3c.dom.Text replaceWholeText(java.lang.String arg0)
                                  throws org.w3c.dom.DOMException
Specified by:
replaceWholeText in interface org.w3c.dom.Text
Throws:
org.w3c.dom.DOMException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

buildWithAttachments

public void buildWithAttachments()
Description copied from class: NodeImpl
Parses this node and builds the object structure in memory. AXIOM supports two levels of deffered building. First is deffered building of AXIOM using StAX. Second level is the deffered building of attachments. AXIOM reads in the attachements from the stream only when user asks by calling getDataHandler(). build() method builds the OM without the attachments. buildAll() builds the OM together with attachement data. This becomes handy when user wants to free the input stream.

Specified by:
buildWithAttachments in interface org.apache.axiom.om.OMNode
Overrides:
buildWithAttachments in class NodeImpl

isBinary

public boolean isBinary()
Specified by:
isBinary in interface org.apache.axiom.om.OMText

setBinary

public void setBinary(boolean value)
Receiving binary can happen as either MTOM attachments or as Base64 Text In the case of Base64 user has to explicitly specify that the content is binary, before calling getDataHandler(), getInputStream()....

Specified by:
setBinary in interface org.apache.axiom.om.OMText

getNamespace

public org.apache.axiom.om.OMNamespace getNamespace()
Specified by:
getNamespace in interface org.apache.axiom.om.OMText