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.beans
Class PropertyOwnerPointer

    java.lang.Object
      org.apache.commons.jxpath.ri.model.NodePointer
          org.apache.commons.jxpath.ri.model.beans.PropertyOwnerPointer

All Implemented Interfaces:
  Serializable, Cloneable, Comparable, Pointer

Direct Known Subclasses:
  BeanPointer, DynaBeanPointer, DynamicPointer, NullPointer

    public abstract class PropertyOwnerPointer

extends NodePointer

A pointer describing a node that has properties, each of which could be a collection.

Version:
  $Revision: 652845 $ $Date: 2008-05-02 12:46:46 -0500 (Fri, 02 May 2008) $
Author:
  Dmitri Plotnikov
See Also:
  Serialized Form

Field Summary

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

Constructor Summary
`protected` | `PropertyOwnerPointer(NodePointer parent)` Create a new PropertyOwnerPointer.
`protected` | `PropertyOwnerPointer(NodePointer parent, Locale locale)` Create a new PropertyOwnerPointer.

Method Summary
`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.
`NodeIterator` | `createNodeIterator(String property, boolean reverse, NodePointer startWith)` Create a NodeIterator.
`Object` | `getImmediateNode()` Returns the object the pointer points to; does not convert it to a "canonical" type.
`abstract QName` | `getName()` Returns the name of this node.
`abstract PropertyPointer` | `getPropertyPointer()` Get a PropertyPointer for this PropertyOwnerPointer.
`boolean` | `isDynamicPropertyDeclarationSupported()` Learn whether dynamic property declaration is supported.
`boolean` | `isValidProperty(QName name)` Learn whether `name` is a valid child name for this PropertyOwnerPointer.
`void` | `remove()` If this is a root node pointer, throws an exception; otherwise forwards the call to the parent node.
`void` | `setIndex(int index)` Set the index of this NodePointer.
`void` | `setValue(Object value)` Throws an exception if you try to change the root element, otherwise forwards the call to the parent pointer.

Methods inherited from class org.apache.commons.jxpath.ri.model.NodePointer
`asPath, clone, compareTo, createAttribute, createChild, createChild, createPath, createPath, escape, getAbstractFactory, getBaseValue, getDefaultNamespaceURI, getImmediateParentPointer, getImmediateValuePointer, getIndex, getLength, getLocale, getNamespaceResolver, getNamespaceURI, getNamespaceURI, getNode, getNodeSetByKey, getNodeValue, getParent, getPointerByID, getPointerByKey, getRootNode, getValue, getValuePointer, isActual, isAttribute, isCollection, isContainer, isDefaultNamespace, isLanguage, isLeaf, isNode, isRoot, namespaceIterator, namespacePointer, newChildNodePointer, newNodePointer, printPointerChain, setAttribute, setNamespaceResolver, testNode, toString`

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

Constructor Detail

### PropertyOwnerPointer

    protected PropertyOwnerPointer(NodePointer parent,
                                   Locale locale)

  Create a new PropertyOwnerPointer.

  Parameters:
    `parent` - parent pointer
    `locale` - Locale

### PropertyOwnerPointer

    protected PropertyOwnerPointer(NodePointer parent)

  Create a new PropertyOwnerPointer.

  Parameters:
    `parent` - pointer

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

### createNodeIterator

    public NodeIterator createNodeIterator(String property,
                                           boolean reverse,
                                           NodePointer startWith)

  Create a NodeIterator.

  Parameters:
    `property` - property name
    `reverse` - whether to iterate in reverse
    `startWith` - first pointer to return
  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

### setIndex

    public void setIndex(int index)

  Description copied from class: `NodePointer`
  Set the index of this NodePointer.

  Overrides:
    `setIndex` in class `NodePointer`
  Parameters:
    `index` - int

### 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

### getName

    public abstract QName getName()

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

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

### isValidProperty

    public boolean isValidProperty(QName name)

  Learn whether `name` is a valid child name for this PropertyOwnerPointer.

  Parameters:
    `name` - the QName to test
  Returns:
    `true` if `QName` is a valid property name.
  Since:
    JXPath 1.3

### setValue

    public void setValue(Object value)

  Throws an exception if you try to change the root element, otherwise forwards the call to the parent pointer.

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

### remove

    public void remove()

  If this is a root node pointer, throws an exception; otherwise forwards the call to the parent node.

  Overrides:
    `remove` in class `NodePointer`

### getPropertyPointer

    public abstract PropertyPointer getPropertyPointer()

  Get a PropertyPointer for this PropertyOwnerPointer.

  Returns:
    PropertyPointer

### isDynamicPropertyDeclarationSupported

    public boolean isDynamicPropertyDeclarationSupported()

  Learn whether dynamic property declaration is supported.

  Returns:
    true if the property owner can set a property "does not exist". A good example is a Map. You can always assign a value to any key even if it has never been "declared".

### 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

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.