Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.jxpath.ri.model.jdom
Class JDOMNodePointer

    java.lang.Object
      org.apache.commons.jxpath.ri.model.NodePointer
          org.apache.commons.jxpath.ri.model.jdom.JDOMNodePointer

All Implemented Interfaces:
  Serializable, Cloneable, Comparable, Pointer

    public class JDOMNodePointer

extends NodePointer

A Pointer that points to a DOM node.

Version:
  $Revision: 668329 $ $Date: 2008-06-16 16:59:48 -0500 (Mon, 16 Jun 2008) $
Author:
  Dmitri Plotnikov
See Also:
  Serialized Form

Field Summary
`static String` | `XML_NAMESPACE_URI` XML ns uri
`static String` | `XMLNS_NAMESPACE_URI` XMLNS ns uri

Fields inherited from class org.apache.commons.jxpath.ri.model.NodePointer
`index, locale, parent, UNKNOWN_NAMESPACE, WHOLE_COLLECTION`

Constructor Summary
`JDOMNodePointer(NodePointer parent, Object node)` Create a new JDOMNodePointer.
`JDOMNodePointer(Object node, Locale locale)` Create a new JDOMNodePointer.
`JDOMNodePointer(Object node, Locale locale, String id)` Create a new JDOMNodePointer.

Method Summary
`String` | `asPath()` Returns an XPath that maps to this Pointer.
`NodeIterator` | `attributeIterator(QName name)` Returns a NodeIterator that iterates over all attributes of the current node matching the supplied node name (could have a wildcard).
`NodeIterator` | `childIterator(NodeTest test, boolean reverse, NodePointer startWith)` Returns a NodeIterator that iterates over all children or all children that match the given NodeTest, starting with the specified one.
`int` | `compareChildNodePointers(NodePointer pointer1, NodePointer pointer2)` Compares two child NodePointers and returns a positive number, zero or a positive number according to the order of the pointers.
`NodePointer` | `createAttribute(JXPathContext context, QName name)` Called to create a non-existing attribute
`NodePointer` | `createChild(JXPathContext context, QName name, int index)` Called by a child pointer when it needs to create a parent object for a non-existent collection element.
`NodePointer` | `createChild(JXPathContext context, QName name, int index, Object value)` Called by a child pointer if that child needs to assign the value supplied in the createPath(context, value) call to a non-existent node.
`boolean` | `equals(Object object)`
`protected static String` | `findEnclosingAttribute(Object n, String attrName, Namespace ns)` Find the nearest occurrence of the specified attribute on the specified and enclosing elements.
`Object` | `getBaseValue()` Returns the value represented by the pointer before indexing.
`Object` | `getImmediateNode()` Returns the object the pointer points to; does not convert it to a "canonical" type.
`protected String` | `getLanguage()` Get the language of this element.
`int` | `getLength()` If the pointer represents a collection (or collection element), returns the length of the collection.
`static String` | `getLocalName(Object node)` Get the local name of the specified node.
`QName` | `getName()` Returns the name of this node.
`NamespaceResolver` | `getNamespaceResolver()` Get the NamespaceResolver associated with this NodePointer.
`String` | `getNamespaceURI()` Returns the namespace URI associated with this Pointer.
`String` | `getNamespaceURI(String prefix)` Decodes a namespace prefix to the corresponding URI.
`static String` | `getPrefix(Object node)` Get the prefix from a given node.
`Object` | `getValue()` By default, returns `getNode()`, can be overridden to return a "canonical" value, like for instance a DOM element should return its string value.
`int` | `hashCode()`
`boolean` | `isCollection()` Returns `true` if the value of the pointer is an array or a Collection.
`boolean` | `isLanguage(String lang)` Returns true if the xml:lang attribute for the current node or its parent has the specified prefix lang.
`boolean` | `isLeaf()` If true, this node does not have children
`NodeIterator` | `namespaceIterator()` Returns a NodeIterator that iterates over all namespaces of the value currently pointed at.
`NodePointer` | `namespacePointer(String prefix)` Returns a NodePointer for the specified namespace.
`void` | `remove()` Remove the node of the object graph this pointer points to.
`void` | `setValue(Object value)` Converts the value to the required type and changes the corresponding object to that value.
`static boolean` | `testNode(NodePointer pointer, Object node, NodeTest test)` Execute test against node on behalf of pointer.
`boolean` | `testNode(NodeTest test)` Checks if this Pointer matches the supplied NodeTest.

Methods inherited from class org.apache.commons.jxpath.ri.model.NodePointer
`clone, compareTo, createPath, createPath, escape, getAbstractFactory, getDefaultNamespaceURI, getImmediateParentPointer, getImmediateValuePointer, getIndex, getLocale, getNode, getNodeSetByKey, getNodeValue, getParent, getPointerByID, getPointerByKey, getRootNode, getValuePointer, isActual, isAttribute, isContainer, isDefaultNamespace, isNode, isRoot, newChildNodePointer, newNodePointer, printPointerChain, setAttribute, setIndex, setNamespaceResolver, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### XML_NAMESPACE_URI

    public static final String XML_NAMESPACE_URI

  XML ns uri

  See Also:
    Constant Field Values

### XMLNS_NAMESPACE_URI

    public static final String XMLNS_NAMESPACE_URI

  XMLNS ns uri

  See Also:
    Constant Field Values

Constructor Detail

### JDOMNodePointer

    public JDOMNodePointer(Object node,
                           Locale locale)

  Create a new JDOMNodePointer.

  Parameters:
    `node` - pointed
    `locale` - Locale

### JDOMNodePointer

    public JDOMNodePointer(Object node,
                           Locale locale,
                           String id)

  Create a new JDOMNodePointer.

  Parameters:
    `node` - pointed
    `locale` - Locale
    `id` - String id

### JDOMNodePointer

    public JDOMNodePointer(NodePointer parent,
                           Object node)

  Create a new JDOMNodePointer.

  Parameters:
    `parent` - NodePointer
    `node` - pointed

Method Detail

### childIterator

    public NodeIterator childIterator(NodeTest test,
                                      boolean reverse,
                                      NodePointer startWith)

  Description copied from class: `NodePointer`
  Returns a NodeIterator that iterates over all children or all children that match the given NodeTest, starting with the specified one.

  Overrides:
    `childIterator` in class `NodePointer`
  Parameters:
    `test` - NodeTest to filter children
    `reverse` - specified iteration direction
    `startWith` - the NodePointer to start with
  Returns:
    NodeIterator

### attributeIterator

    public NodeIterator attributeIterator(QName name)

  Description copied from class: `NodePointer`
  Returns a NodeIterator that iterates over all attributes of the current node matching the supplied node name (could have a wildcard). May return null if the object does not support the attributes.

  Overrides:
    `attributeIterator` in class `NodePointer`
  Parameters:
    `name` - the attribute name to test
  Returns:
    NodeIterator

### namespaceIterator

    public NodeIterator namespaceIterator()

  Description copied from class: `NodePointer`
  Returns a NodeIterator that iterates over all namespaces of the value currently pointed at. May return null if the object does not support the namespaces.

  Overrides:
    `namespaceIterator` in class `NodePointer`
  Returns:
    NodeIterator

### namespacePointer

    public NodePointer namespacePointer(String prefix)

  Description copied from class: `NodePointer`
  Returns a NodePointer for the specified namespace. Will return null if namespaces are not supported. Will return UNKNOWN_NAMESPACE if there is no such namespace.

  Overrides:
    `namespacePointer` in class `NodePointer`
  Parameters:
    `prefix` - incoming namespace
  Returns:
    NodePointer for `namespace`

### getNamespaceURI

    public String getNamespaceURI()

  Description copied from class: `NodePointer`
  Returns the namespace URI associated with this Pointer.

  Overrides:
    `getNamespaceURI` in class `NodePointer`
  Returns:
    String uri

### getNamespaceResolver

    public NamespaceResolver getNamespaceResolver()

  Description copied from class: `NodePointer`
  Get the NamespaceResolver associated with this NodePointer.

  Overrides:
    `getNamespaceResolver` in class `NodePointer`
  Returns:
    NamespaceResolver

### getNamespaceURI

    public String getNamespaceURI(String prefix)

  Description copied from class: `NodePointer`
  Decodes a namespace prefix to the corresponding URI.

  Overrides:
    `getNamespaceURI` in class `NodePointer`
  Parameters:
    `prefix` - prefix to decode
  Returns:
    String uri

### compareChildNodePointers

    public int compareChildNodePointers(NodePointer pointer1,
                                        NodePointer pointer2)

  Description copied from class: `NodePointer`
  Compares two child NodePointers and returns a positive number, zero or a positive number according to the order of the pointers.

  Specified by:
    `compareChildNodePointers` in class `NodePointer`
  Parameters:
    `pointer1` - first pointer to be compared
    `pointer2` - second pointer to be compared
  Returns:
    int per Java comparison conventions

### getBaseValue

    public Object getBaseValue()

  Description copied from class: `NodePointer`
  Returns the value represented by the pointer before indexing. So, if the node represents an element of a collection, this method returns the collection itself.

  Specified by:
    `getBaseValue` in class `NodePointer`
  Returns:
    Object value

### isCollection

    public boolean isCollection()

  Description copied from class: `NodePointer`
  Returns `true` if the value of the pointer is an array or a Collection.

  Specified by:
    `isCollection` in class `NodePointer`
  Returns:
    boolean

### getLength

    public int getLength()

  Description copied from class: `NodePointer`
  If the pointer represents a collection (or collection element), returns the length of the collection. Otherwise returns 1 (even if the value is null).

  Specified by:
    `getLength` in class `NodePointer`
  Returns:
    int

### isLeaf

    public boolean isLeaf()

  Description copied from class: `NodePointer`
  If true, this node does not have children

  Specified by:
    `isLeaf` in class `NodePointer`
  Returns:
    boolean

### getName

    public QName getName()

  Description copied from class: `NodePointer`
  Returns the name of this node. Can be null.

  Specified by:
    `getName` in class `NodePointer`
  Returns:
    QName

### getImmediateNode

    public Object getImmediateNode()

  Description copied from class: `NodePointer`
  Returns the object the pointer points to; does not convert it to a "canonical" type.

  Specified by:
    `getImmediateNode` in class `NodePointer`
  Returns:
    Object node

### getValue

    public Object getValue()

  Description copied from class: `NodePointer`
  By default, returns `getNode()`, can be overridden to return a "canonical" value, like for instance a DOM element should return its string value.

  Specified by:
    `getValue` in interface `Pointer`
  Overrides:
    `getValue` in class `NodePointer`
  Returns:
    Object value

### setValue

    public void setValue(Object value)

  Description copied from class: `NodePointer`
  Converts the value to the required type and changes the corresponding object to that value.

  Specified by:
    `setValue` in interface `Pointer`
  Specified by:
    `setValue` in class `NodePointer`
  Parameters:
    `value` - the value to set

### testNode

    public boolean testNode(NodeTest test)

  Description copied from class: `NodePointer`
  Checks if this Pointer matches the supplied NodeTest.

  Overrides:
    `testNode` in class `NodePointer`
  Parameters:
    `test` - the NodeTest to execute
  Returns:
    true if a match

### testNode

    public static boolean testNode(NodePointer pointer,
                                   Object node,
                                   NodeTest test)

  Execute test against node on behalf of pointer.

  Parameters:
    `pointer` - Pointer
    `node` - to test
    `test` - to execute
  Returns:
    true if node passes test

### getPrefix

    public static String getPrefix(Object node)

  Get the prefix from a given node.

  Parameters:
    `node` - to check
  Returns:
    String

### getLocalName

    public static String getLocalName(Object node)

  Get the local name of the specified node.

  Parameters:
    `node` - to check
  Returns:
    String local name

### isLanguage

    public boolean isLanguage(String lang)

  Returns true if the xml:lang attribute for the current node or its parent has the specified prefix lang. If no node has this prefix, calls `super.isLanguage(lang)`.

  Overrides:
    `isLanguage` in class `NodePointer`
  Parameters:
    `lang` - to compare
  Returns:
    true if this element uses the specified language.

### getLanguage

    protected String getLanguage()

  Get the language of this element.

  Returns:
    String language

### findEnclosingAttribute

    protected static String findEnclosingAttribute(Object n,
                                                   String attrName,
                                                   Namespace ns)

  Find the nearest occurrence of the specified attribute on the specified and enclosing elements.

  Parameters:
    `n` - current node
    `attrName` - attribute name
    `ns` - Namespace
  Returns:
    attribute value

### createChild

    public NodePointer createChild(JXPathContext context,
                                   QName name,
                                   int index)

  Description copied from class: `NodePointer`
  Called by a child pointer when it needs to create a parent object for a non-existent collection element. It may have to expand the collection, then create an element object and return a new pointer describing the newly created element.

  Overrides:
    `createChild` in class `NodePointer`
  Parameters:
    `context` - the owning JXPathCOntext
    `name` - the QName at which a child should be created
    `index` - child index.
  Returns:
    created NodePointer

### createChild

    public NodePointer createChild(JXPathContext context,
                                   QName name,
                                   int index,
                                   Object value)

  Description copied from class: `NodePointer`
  Called by a child pointer if that child needs to assign the value supplied in the createPath(context, value) call to a non-existent node. This method may have to expand the collection in order to assign the element.

  Overrides:
    `createChild` in class `NodePointer`
  Parameters:
    `context` - the owning JXPathCOntext
    `name` - the QName at which a child should be created
    `index` - child index.
    `value` - node value to set
  Returns:
    created NodePointer

### createAttribute

    public NodePointer createAttribute(JXPathContext context,
                                       QName name)

  Description copied from class: `NodePointer`
  Called to create a non-existing attribute

  Overrides:
    `createAttribute` in class `NodePointer`
  Parameters:
    `context` - the owning JXPathCOntext
    `name` - the QName at which an attribute should be created
  Returns:
    created NodePointer

### remove

    public void remove()

  Description copied from class: `NodePointer`
  Remove the node of the object graph this pointer points to.

  Overrides:
    `remove` in class `NodePointer`

### asPath

    public String asPath()

  Description copied from class: `NodePointer`
  Returns an XPath that maps to this Pointer.

  Specified by:
    `asPath` in interface `Pointer`
  Overrides:
    `asPath` in class `NodePointer`
  Returns:
    String xpath expression

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### equals

    public boolean equals(Object object)

  Overrides:
    `equals` in class `Object`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.