org.jboss.cache
Class AbstractNode<K,V>

java.lang.Object
  extended by org.jboss.cache.AbstractNode<K,V>
All Implemented Interfaces:
Node<K,V>
Direct Known Subclasses:
UnversionedNode, WorkspaceNodeImpl

public abstract class AbstractNode<K,V>
extends Object
implements Node<K,V>

Base class for UnversionedNode.

Author:
manik

Field Summary
protected  boolean deleted
           
protected  Fqn<?> fqn
           
protected  Map<Object,Node<K,V>> children
           
protected  boolean resident
           
 
Constructor Summary
AbstractNode()
           
 
Method Summary
 boolean equals(Object another)
           
 int hashCode()
           
 boolean isDeleted()
           
 boolean isResident()
          Nodes marked resident would be ignored by the eviction algorithms.
 void markAsDeleted(boolean marker)
           
 void markAsDeleted(boolean marker, boolean recursive)
           
 void setResident(boolean resident)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.cache.Node
addChild, clearData, dataSize, get, getData, getFqn, getChild, getChild, getChildren, getChildrenNames, getKeys, getParent, hasChild, hasChild, isLockForChildInsertRemove, isValid, put, putAll, putIfAbsent, remove, removeChild, removeChild, replace, replace, replaceAll, setLockForChildInsertRemove
 

Field Detail

deleted

protected boolean deleted

children

protected Map<Object,Node<K,V>> children

fqn

protected Fqn<?> fqn

resident

protected boolean resident
Constructor Detail

AbstractNode

public AbstractNode()
Method Detail

isDeleted

public boolean isDeleted()

markAsDeleted

public void markAsDeleted(boolean marker)

markAsDeleted

public void markAsDeleted(boolean marker,
                          boolean recursive)

setResident

public void setResident(boolean resident)
Specified by:
setResident in interface Node<K,V>
See Also:
Node.isResident()

isResident

public boolean isResident()
Description copied from interface: Node
Nodes marked resident would be ignored by the eviction algorithms. E.g. if the algorithm is "keep LRU 10 nodes" - the resident nodes won't be counted within those 10 nodes, and also won't be evicted when the threshold is reached. N.B. calling this method won't have any effect on node's eviction, e.g. we won't consider this node as being 'used' in a LRU scenario. If the cache is used in a replicated environment then the resident property is NOT replicated across the cluster. Also the property is not transactionable.

Specified by:
isResident in interface Node<K,V>

equals

public boolean equals(Object another)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object


Copyright © 2007 JBoss, a division of Red Hat. All Rights Reserved.