net.sf.saxon.tree
Class ProcInstImpl

java.lang.Object
  extended by net.sf.saxon.om.AbstractNode
      extended by net.sf.saxon.tree.NodeImpl
          extended by net.sf.saxon.tree.ProcInstImpl
All Implemented Interfaces:
DOMLocator, Source, SourceLocator, Item, NodeInfo, Node, ProcessingInstruction

 class ProcInstImpl
extends NodeImpl
implements ProcessingInstruction

ProcInstImpl is an implementation of ProcInstInfo used by the Propagator to construct its trees.

Author:
Michael H. Kay (michael.h.kay@ntlworld.com)

Field Summary
(package private)  String content
           
(package private)  int lineNumber
           
(package private)  int nameCode
           
(package private)  String systemId
           
 
Fields inherited from class net.sf.saxon.tree.NodeImpl
index, parent
 
Fields inherited from class net.sf.saxon.om.AbstractNode
NODE_LETTER
 
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 net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, LOCAL_NAMESPACES, NO_NAMESPACES
 
Constructor Summary
ProcInstImpl(int nameCode, String content)
           
 
Method Summary
 void copy(Receiver out, int whichNamespaces)
          Copy this node to a given outputter
 String getData()
          The content of this processing instruction.
 int getLineNumber()
          Get the line number of the node within its source entity
 int getNameCode()
          Get the nameCode of the node.
 int getNodeKind()
          Get the kind of node.
 String getStringValue()
          Get the string value of the node
 String getSystemId()
          Get the system ID for the entity containing this node.
 String getTarget()
          The target of this processing instruction.
 void setData(String data)
          Set the content of this PI.
 void setLocation(String uri, int lineNumber)
          Set the system ID and line number
 
Methods inherited from class net.sf.saxon.tree.NodeImpl
compareOrder, copy, generateId, getAttributeValue, getBaseURI, getDisplayName, getDocumentElement, getDocumentRoot, getFingerprint, getFirstChild, getLastChild, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getOriginatingNode, getParent, getPrefix, getPreviousInDocument, getPreviousSibling, getRoot, getSequenceNumber, getURI, hasAttributes, hasChildNodes, isSameNode, iterateAxis, iterateAxis, outputNamespaceNodes, setSystemId
 
Methods inherited from class net.sf.saxon.om.AbstractNode
appendChild, appendData, cloneNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, disallowUpdate, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getChildNodes, getColumnNumber, getDoctype, getDocumentNumber, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, getLength, getLocalName, getName, getNamespaceURI, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getOwnerElement, getParentNode, getPublicId, getSpecified, getTagName, getTypeAnnotation, getTypedValue, getValue, hasAttribute, hasAttributeNS, importNode, insertBefore, insertData, isSupported, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, replaceChild, replaceData, setAttributeNode, setAttributeNodeNS, setAttributeNS, setNodeValue, setPrefix, setValue, splitText, substringData, supports
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.w3c.dom.Node
appendChild, 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
 

Field Detail

content

String content

nameCode

int nameCode

systemId

String systemId

lineNumber

int lineNumber
Constructor Detail

ProcInstImpl

public ProcInstImpl(int nameCode,
                    String content)
Method Detail

getNameCode

public int getNameCode()
Get the nameCode of the node. This is used to locate the name in the NamePool

Specified by:
getNameCode in interface NodeInfo
Overrides:
getNameCode in class NodeImpl
Returns:
an integer name code, which may be used to obtain the actual node name from the name pool
See Also:
allocate, getFingerprint

getStringValue

public String getStringValue()
Description copied from class: AbstractNode
Get the string value of the node

Specified by:
getStringValue in interface Item
Specified by:
getStringValue in interface NodeInfo
Specified by:
getStringValue in class AbstractNode
Returns:
the string value of the item

getNodeKind

public final int getNodeKind()
Description copied from interface: NodeInfo
Get the kind of node. This will be a value such as Type.ELEMENT or Type.ATTRIBUTE

Specified by:
getNodeKind in interface NodeInfo
Returns:
an integer identifying the kind of node. These integer values are the same as those used in the DOM
See Also:
Type

setLocation

public void setLocation(String uri,
                        int lineNumber)
Set the system ID and line number


getSystemId

public String getSystemId()
Get the system ID for the entity containing this node.

Specified by:
getSystemId in interface Source
Specified by:
getSystemId in interface SourceLocator
Specified by:
getSystemId in interface NodeInfo
Overrides:
getSystemId in class NodeImpl
Returns:
the System Identifier of the entity in the source document containing the node, or null if not known. Note this is not the same as the base URI: the base URI can be modified by xml:base, but the system ID cannot.

getLineNumber

public int getLineNumber()
Get the line number of the node within its source entity

Specified by:
getLineNumber in interface SourceLocator
Specified by:
getLineNumber in interface NodeInfo
Overrides:
getLineNumber in class NodeImpl
Returns:
the line number of the node in its original source document; or -1 if not available

copy

public void copy(Receiver out,
                 int whichNamespaces)
          throws TransformerException
Copy this node to a given outputter

Specified by:
copy in class NodeImpl
Throws:
TransformerException

getTarget

public String getTarget()
The target of this processing instruction. XML defines this as being the first token following the markup that begins the processing instruction.

Specified by:
getTarget in interface ProcessingInstruction

getData

public String getData()
The content of this processing instruction. This is from the first non white space character after the target to the character immediately preceding the ?> .

Specified by:
getData in interface ProcessingInstruction
Overrides:
getData in class AbstractNode

setData

public void setData(String data)
             throws DOMException
Set the content of this PI. Always fails.

Specified by:
setData in interface ProcessingInstruction
Overrides:
setData in class AbstractNode
Throws:
DOMException - NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.