Class DefaultProcessingInstruction

All Implemented Interfaces:
Serializable, Cloneable, Node, ProcessingInstruction
Direct Known Subclasses:
DOMProcessingInstruction

public class DefaultProcessingInstruction extends FlyweightProcessingInstruction

DefaultProcessingInstruction is the default Processing Instruction implementation. It is a doubly linked node which supports the parent relationship and can be modified in place.

Version:
$Revision: 1.13 $
Author:
James Strachan
See Also:
  • Constructor Details

    • DefaultProcessingInstruction

      public DefaultProcessingInstruction(String target, Map values)

      This will create a new PI with the given target and values

      Parameters:
      target - is the name of the PI
      values - is the Map values for the PI
    • DefaultProcessingInstruction

      public DefaultProcessingInstruction(String target, String values)

      This will create a new PI with the given target and values

      Parameters:
      target - is the name of the PI
      values - is the values for the PI
    • DefaultProcessingInstruction

      public DefaultProcessingInstruction(Element parent, String target, String values)

      This will create a new PI with the given target and values

      Parameters:
      parent - is the parent element
      target - is the name of the PI
      values - is the values for the PI
  • Method Details

    • setTarget

      public void setTarget(String target)
      Description copied from interface: ProcessingInstruction
      This method is the equivalent to the Node.setName(java.lang.String)method. It is added for clarity.
      Specified by:
      setTarget in interface ProcessingInstruction
      Overrides:
      setTarget in class FlyweightProcessingInstruction
      Parameters:
      target - DOCUMENT ME!
    • setText

      public void setText(String text)
      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:
      setText in interface Node
      Overrides:
      setText in class AbstractNode
      Parameters:
      text - is the new textual value of this node
    • setValues

      public void setValues(Map values)
      Specified by:
      setValues in interface ProcessingInstruction
      Overrides:
      setValues in class AbstractProcessingInstruction
    • setValue

      public void setValue(String name, String value)
      Specified by:
      setValue in interface ProcessingInstruction
      Overrides:
      setValue in class AbstractProcessingInstruction
    • getParent

      public Element getParent()
      Description copied from interface: Node

      getParent returns the parent Element if this node supports the parent relationship or null if it is the root element or does not support the parent relationship.

      This method is an optional feature and may not be supported for all Node implementations.

      Specified by:
      getParent in interface Node
      Overrides:
      getParent in class AbstractNode
      Returns:
      the parent of this node or null if it is the root of the tree or the parent relationship is not supported.
    • setParent

      public void setParent(Element parent)
      Description copied from interface: Node

      setParent sets the parent relationship of this node if the parent relationship is supported or does nothing if the parent relationship is not supported.

      This method should only be called from inside an Element implementation method and is not intended for general use.

      Specified by:
      setParent in interface Node
      Overrides:
      setParent in class AbstractNode
      Parameters:
      parent - is the new parent of this node.
    • supportsParent

      public boolean supportsParent()
      Description copied from interface: Node

      supportsParent returns true if this node supports the parent relationship.

      Some XML tree implementations are singly linked and only support downward navigation through children relationships. The default case is that both parent and children relationships are supported though for memory and performance reasons the parent relationship may not be supported.

      Specified by:
      supportsParent in interface Node
      Overrides:
      supportsParent in class AbstractNode
      Returns:
      true if this node supports the parent relationship or false it is not supported
    • isReadOnly

      public boolean isReadOnly()
      Description copied from interface: Node

      isReadOnly returns true if this node is read only and cannot be modified. Any attempt to modify a read-only Node will result in an UnsupportedOperationException being thrown.

      Specified by:
      isReadOnly in interface Node
      Overrides:
      isReadOnly in class AbstractNode
      Returns:
      true if this Node is read only and cannot be modified otherwise false.