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.jboss.cache
Interface TreeNode

All Known Subinterfaces:
  DataNode, WorkspaceNode

All Known Implementing Classes:
  AbstractNode, Node, OptimisticTreeNode, WorkspaceNodeImpl

    public interface TreeNode

Represents a node in the tree. Has a relative name and a Fqn. Maintains a hashmap of general data. If the node is created in a replicated cache, the relative and fully qualified name, and the keys and values of the hashmap must be serializable.

The current version supports different levels of transaction locking such as simple locking (`IsolationLevel.SERIALIZABLE`, or Read/Write lock with upgrade ( `IsolationLevel.REPEATABLE_READ`) --that is the read lock will be automatically upgraded to write lock when the same owner intends to modify the data after read.

Implementations may not necessarily be not synchronized, so access to instances of TreeNode need to be run under an isolation level above NONE.

Version:
  $Revision: 1.26 $
Author:
  Bela Ban March 25 2003, Ben Wang, Manik Surtani (manik@jboss.org)

Method Summary
`java.util.Set` | `acquireAll(java.lang.Object caller, long timeout, int lock_type)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `addChild(java.lang.Object child_name, TreeNode n)` Adds the already created child node.
`boolean` | `childExists(java.lang.Object child_name)` Returns true if the child exists.
`void` | `clear()` Clears the data of this node.
`boolean` | `containsKey(java.lang.Object key)` Returns true if the key is in the data set.
`TreeNode` | `createChild(java.lang.Object child_name, Fqn fqn, TreeNode parent)` Creates a child node with a name, FQN, and parent.
`TreeNode` | `createChild(java.lang.Object child_name, Fqn fqn, TreeNode parent, java.lang.Object key, java.lang.Object value)` Creates a child node.
`java.lang.Object` | `get(java.lang.Object key)` Returns the value of a key or null if it does not exist.
`TreeNode` | `getChild(java.lang.Object childName)` Returns the named child of this node.
`java.util.Map` | `getChildren()` Returns an unmodifiable map, mapping keys to child nodes.
`boolean` | `getChildrenLoaded()` Deprecated. Will be removed in JBossCache 1.3.
`java.util.Map` | `getData()` Deprecated. Will be removed in JBossCache 1.3.
`java.util.Set` | `getDataKeys()` Returns the data keys, or an empty set if there are no keys.
`Fqn` | `getFqn()` Returns the fully qualified name of the node.
`IdentityLock` | `getImmutableLock()` Deprecated. Will be removed in JBossCache 1.3.
`IdentityLock` | `getLock()` Deprecated. Will be removed in JBossCache 1.3.
`java.lang.Object` | `getName()` Returns the name of this node.
`TreeNode` | `getOrCreateChild(java.lang.Object child_name, GlobalTransaction gtx, boolean createIfNotExists)` Creates a new child of this node if it doesn't exist.
`TreeNode` | `getParent()` Returns the parent of this node.
`boolean` | `hasChildren()` Returns true if this node has children.
`boolean` | `isLocked()` Deprecated. Will be removed in JBossCache 1.3.
`int` | `numAttributes()` Returns the number of attributes.
`void` | `print(java.lang.StringBuffer sb, int indent)` Prints the node and children.
`void` | `printDetails(java.lang.StringBuffer sb, int indent)` Prints the node with details and indent.
`void` | `printIndent(java.lang.StringBuffer sb, int indent)` Prints the node with indent.
`void` | `printLockInfo(java.lang.StringBuffer sb, int indent)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `put(java.util.Map data)` Adds (merges) the contents of the map with the existing data.
`void` | `put(java.util.Map data, boolean eraseData)` Puts the contents of a map into this node.
`java.lang.Object` | `put(java.lang.Object key, java.lang.Object value)` Puts the key and value into the node.
`void` | `release(java.lang.Object caller)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `releaseAll(java.lang.Object owner)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `releaseAllForce()` Deprecated. Will be removed in JBossCache 1.3.
`void` | `releaseForce()` Deprecated. Will be removed in JBossCache 1.3.
`java.lang.Object` | `remove(java.lang.Object key)` Removes the old value of the key.
`void` | `removeAllChildren()` Removes all children.
`void` | `removeChild(java.lang.Object childName)` Removes the named child of this node.
`void` | `setChildren(java.util.Map children)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `setChildrenLoaded(boolean b)` Deprecated. Will be removed in JBossCache 1.3.
`void` | `setRecursiveTreeCacheInstance(TreeCache cache)` Deprecated. Will be removed in JBossCache 1.3.

Method Detail

### createChild

    TreeNode createChild(java.lang.Object child_name,
                         Fqn fqn,
                         TreeNode parent)

  Creates a child node with a name, FQN, and parent. Returns the created node.

### getFqn

    Fqn getFqn()

  Returns the fully qualified name of the node.

### getChild

    TreeNode getChild(java.lang.Object childName)

  Returns the named child of this node.

### removeChild

    void removeChild(java.lang.Object childName)

  Removes the named child of this node.

### getParent

    TreeNode getParent()

  Returns the parent of this node.

### put

    void put(java.util.Map data,
             boolean eraseData)

  Puts the contents of a map into this node. Optionally erases the existing contents.

  Parameters:
    `eraseData` - true to erase the existing contents

### put

    java.lang.Object put(java.lang.Object key,
                         java.lang.Object value)

  Puts the key and value into the node. Returns the old value of the key, if it existed.

### remove

    java.lang.Object remove(java.lang.Object key)

  Removes the old value of the key.

### get

    java.lang.Object get(java.lang.Object key)

  Returns the value of a key or null if it does not exist.

### clear

    void clear()

  Clears the data of this node.

### put

    void put(java.util.Map data)

  Adds (merges) the contents of the map with the existing data.

### getName

    java.lang.Object getName()

  Returns the name of this node.

### print

    void print(java.lang.StringBuffer sb,
               int indent)

  Prints the node and children.

### printDetails

    void printDetails(java.lang.StringBuffer sb,
                      int indent)

  Prints the node with details and indent.

### printIndent

    void printIndent(java.lang.StringBuffer sb,
                     int indent)

  Prints the node with indent.

### containsKey

    boolean containsKey(java.lang.Object key)

  Returns true if the key is in the data set.

### getChildren

    java.util.Map getChildren()

  Returns an unmodifiable map, mapping keys to child nodes. Implementations need to make sure the map cannot be changed.

  Returns:
    Map

### getDataKeys

    java.util.Set getDataKeys()

  Returns the data keys, or an empty set if there are no keys.

### childExists

    boolean childExists(java.lang.Object child_name)

  Returns true if the child exists.

### numAttributes

    int numAttributes()

  Returns the number of attributes.

### hasChildren

    boolean hasChildren()

  Returns true if this node has children.

### createChild

    TreeNode createChild(java.lang.Object child_name,
                         Fqn fqn,
                         TreeNode parent,
                         java.lang.Object key,
                         java.lang.Object value)

  Creates a child node.

### removeAllChildren

    void removeAllChildren()

  Removes all children.

### addChild

    void addChild(java.lang.Object child_name,
                  TreeNode n)

  Adds the already created child node. Replaces the existing child node if present.

### getData

    java.util.Map getData()

  Deprecated. Will be removed in JBossCache 1.3.

  Returns a copy of the attributes. Use get(Object key) instead.

  See Also:
    `DataNode`

### getImmutableLock

    IdentityLock getImmutableLock()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### getLock

    IdentityLock getLock()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### getOrCreateChild

    TreeNode getOrCreateChild(java.lang.Object child_name,
                              GlobalTransaction gtx,
                              boolean createIfNotExists)

  Creates a new child of this node if it doesn't exist. Also notifies the cache that the new child has been created. dded this new getOrCreateChild() method to avoid thread contention on create_lock in PessimisticLockInterceptor.lock() Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### printLockInfo

    void printLockInfo(java.lang.StringBuffer sb,
                       int indent)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### isLocked

    boolean isLocked()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### releaseAll

    void releaseAll(java.lang.Object owner)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### releaseAllForce

    void releaseAllForce()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### acquireAll

    java.util.Set acquireAll(java.lang.Object caller,
                             long timeout,
                             int lock_type)
                             throws LockingException,
                                    TimeoutException,
                                    java.lang.InterruptedException

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  Throws:
    `LockingException`
    `TimeoutException`
    `java.lang.InterruptedException`
  See Also:
    `DataNode`

### setRecursiveTreeCacheInstance

    void setRecursiveTreeCacheInstance(TreeCache cache)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### getChildrenLoaded

    boolean getChildrenLoaded()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### setChildrenLoaded

    void setChildrenLoaded(boolean b)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### setChildren

    void setChildren(java.util.Map children)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes. Sets Map

  See Also:
    `DataNode`

### release

    void release(java.lang.Object caller)

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

### releaseForce

    void releaseForce()

  Deprecated. Will be removed in JBossCache 1.3.

  Not to be exposed. Internal calls should use impl classes.

  See Also:
    `DataNode`

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 © 1998-2005 JBoss Inc . All Rights Reserved.