Class AbstractProcessingInstruction

java.lang.Object
org.dom4j.tree.AbstractNode
org.dom4j.tree.AbstractProcessingInstruction
All Implemented Interfaces:
Serializable, Cloneable, Node, ProcessingInstruction
Direct Known Subclasses:
FlyweightProcessingInstruction

public abstract class AbstractProcessingInstruction extends AbstractNode implements ProcessingInstruction

AbstractProcessingInstruction is an abstract base class for tree implementors to use for implementation inheritence.

Version:
$Revision: 1.17 $
See Also:
  • Constructor Details

    • AbstractProcessingInstruction

      public AbstractProcessingInstruction()
  • Method Details

    • getNodeType

      public short getNodeType()
      Description copied from interface: Node
      Returns the code according to the type of node. This makes processing nodes polymorphically much easier as the switch statement can be used instead of multiple if (instanceof) statements.
      Specified by:
      getNodeType in interface Node
      Overrides:
      getNodeType in class AbstractNode
      Returns:
      a W3C DOM complient code for the node type such as ELEMENT_NODE or ATTRIBUTE_NODE
    • getPath

      public String getPath(Element context)
      Description copied from interface: Node
      Returns the relative XPath expression which will return a node set containing the given node such as a/b/@c. No indexing will be used to restrict the path if multiple elements with the same name occur on the path.
      Specified by:
      getPath in interface Node
      Parameters:
      context - is the parent context from which the relative path should start. If the context is null or the context is not an ancestor of this node then the path will be absolute and start from the document and so begin with the '/' character.
      Returns:
      the XPath expression relative to the given context which will return a nodeset containing at least this node.
    • getUniquePath

      public String getUniquePath(Element context)
      Description copied from interface: Node

      Returns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node. This method will use the XPath index operator to restrict the path if multiple elements with the same name occur on the path.

      Specified by:
      getUniquePath in interface Node
      Parameters:
      context - is the parent context from which the path should start. If the context is null or the context is not an ancestor of this node then the path will start from the document and so begin with the '/' character.
      Returns:
      the XPath expression relative to the given context which will return a nodeset containing just this node.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • asXML

      public String asXML()
      Description copied from interface: Node

      asXML returns the textual XML representation of this node.

      Specified by:
      asXML in interface Node
      Returns:
      the XML representation of this node
    • write

      public void write(Writer writer) throws IOException
      Description copied from interface: Node

      write writes this node as the default XML notation for this node. If you wish to control the XML output (such as for pretty printing, changing the indentation policy etc.) then please use XMLWriter or its derivations.

      Specified by:
      write in interface Node
      Overrides:
      write in class AbstractNode
      Parameters:
      writer - is the Writer to output the XML to
      Throws:
      IOException - DOCUMENT ME!
    • accept

      public void accept(Visitor visitor)
      Description copied from interface: Node

      accept is the method used in the Visitor Pattern.

      Specified by:
      accept in interface Node
      Parameters:
      visitor - is the visitor in the Visitor Pattern
    • setValue

      public void setValue(String name, String value)
      Specified by:
      setValue in interface ProcessingInstruction
    • setValues

      public void setValues(Map<String,String> data)
      Specified by:
      setValues in interface ProcessingInstruction
    • getName

      public String getName()
      Description copied from interface: Node

      getName returns the name of this node. This is the XML local name of the element, attribute, entity or processing instruction. For CDATA and Text nodes this method will return null.

      Specified by:
      getName in interface Node
      Overrides:
      getName in class AbstractNode
      Returns:
      the XML name of this node
    • setName

      public void setName(String name)
      Description copied from interface: Node

      Sets the text data of this node or this method will throw an UnsupportedOperationException if it is read-only.

      Specified by:
      setName in interface Node
      Overrides:
      setName in class AbstractNode
      Parameters:
      name - is the new name of this node
    • removeValue

      public boolean removeValue(String name)
      Specified by:
      removeValue in interface ProcessingInstruction
    • toString

      protected String toString(Map<String,String> values)

      This will convert the Map to a string representation.

      Parameters:
      values - is a Map of PI data to convert
      Returns:
      DOCUMENT ME!
    • parseValues

      protected Map<String,String> parseValues(String text)

      Parses the raw data of PI as a Map.

      Parameters:
      text - String PI data to parse
      Returns:
      DOCUMENT ME!
    • getName

      private String getName(StringTokenizer tokenizer)
    • getValue

      private String getValue(StringTokenizer tokenizer)