de.grogra.graph.impl
Class SharedObjectNode

java.lang.Object
  extended by de.grogra.graph.impl.Edge
      extended by de.grogra.graph.impl.Node
          extended by de.grogra.graph.impl.SharedObjectNode
All Implemented Interfaces:
Manageable, PersistenceCapable, Shareable, SharedObjectProvider, UserFields, XObject, Map, java.io.Serializable

public final class SharedObjectNode
extends Node
implements SharedObjectProvider

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class de.grogra.graph.impl.Node
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType
 
Nested classes/interfaces inherited from interface de.grogra.persistence.SharedObjectProvider
SharedObjectProvider.Binding
 
Nested classes/interfaces inherited from interface de.grogra.util.Map
Map.Chain
 
Field Summary
static Node.NType $TYPE
           
static int MIN_UNUSED_SPECIAL_OF_SOURCE
           
static Node.NType.Field object$FIELD
           
static int REF
           
 
Fields inherited from class de.grogra.graph.impl.Node
ADDITIONAL_FIELDS, bits, DELETED, EXTENT_BIT, EXTENT_MASK, extentIndex$FIELD, extentTail$FIELD, HAS_OBSERVERS, IS_INTERPRETIVE, isInterpretive$FIELD, LAST_EXTENT_INDEX, layer$FIELD, MARK, mark$FIELD, MIME_TYPE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD, USED_BITS
 
Fields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAP
 
Constructor Summary
SharedObjectNode(Shareable object)
           
 
Method Summary
 void fieldModified(PersistenceField field, int[] indices, Transaction t)
           
protected  Node.NType getNTypeImpl()
          This method returns the Node.NType which describes the managed fields of the class of this node.
 java.lang.Object getObject()
           
static ManageableType.Field getObjectField()
           
 Type getObjectType()
           
 java.lang.String getProviderName()
           
 Shareable getSharedObject()
           
protected  Node newInstance()
          This method returns a new instance of the class of this node.
 ResolvableReference readReference(PersistenceInput in)
           
protected  void specialEdgeRefModified(Node ref, Node.NType.Field edgeField, PersistenceField field, int[] indices, Transaction t)
           
 void writeObject(Shareable object, PersistenceOutput out)
           
 
Methods inherited from class de.grogra.graph.impl.Node
addEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, clone, cloneGraph, dump, dumpTree, dup, dupUnmanagedFields, edgeChanged, findAdjacent, get, getAccessor, getAccessor, getAttributes, getAxisParent, getBoolean, getBranch, getBranchLength, getBranchNode, getBranchTail, getByte, getChar, getCommonAncestor, getCurrentGraphState, getDirectChildCount, getDouble, getEdgeAttributeAccessor, getEdgeAttributes, getEdgeBitsTo, getEdgeTo, getExtentIndex, getFirst, getFirstEdge, getFloat, getGraph, getId, getIndex, getInstantiator, getInt, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getObject, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getShort, getSource, getStamp, getSuccessor, getSymbol, getSymbolColor, getTarget, getTransaction, getUserField, getUserFieldCount, getXClass, getXData, hasName, initProvider, initXClass, insertBranchNode, insertBranchNode, instantiateGraph, isAncestorOf, isDirection, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, paramString, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setLayer, setMark, setName, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRemoved, toString, writeReplace
 
Methods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBits
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.grogra.persistence.PersistenceCapable
getBitMark, getObjectMark, setBitMark, setObjectMark
 

Field Detail

$TYPE

public static final Node.NType $TYPE

MIN_UNUSED_SPECIAL_OF_SOURCE

public static final int MIN_UNUSED_SPECIAL_OF_SOURCE
See Also:
Constant Field Values

object$FIELD

public static final Node.NType.Field object$FIELD

REF

public static final int REF
See Also:
Constant Field Values
Constructor Detail

SharedObjectNode

public SharedObjectNode(Shareable object)
Method Detail

fieldModified

public void fieldModified(PersistenceField field,
                          int[] indices,
                          Transaction t)
Specified by:
fieldModified in interface Manageable
Overrides:
fieldModified in class Node

getNTypeImpl

protected Node.NType getNTypeImpl()
Description copied from class: Node
This method returns the Node.NType which describes the managed fields of the class of this node. This method has to be implemented in every concrete subclass.

Overrides:
getNTypeImpl in class Node
Returns:
type describing the managed fields of the class of this node

getObject

public java.lang.Object getObject()

getObjectField

public static ManageableType.Field getObjectField()

getObjectType

public Type getObjectType()

getProviderName

public java.lang.String getProviderName()
Specified by:
getProviderName in interface SharedObjectProvider

getSharedObject

public Shareable getSharedObject()

newInstance

protected Node newInstance()
Description copied from class: Node
This method returns a new instance of the class of this node. This method has to be implemented in every concrete subclass.

Overrides:
newInstance in class Node
Returns:
new instance of class of this node

readReference

public ResolvableReference readReference(PersistenceInput in)
                                  throws java.io.IOException
Specified by:
readReference in interface SharedObjectProvider
Throws:
java.io.IOException

specialEdgeRefModified

protected void specialEdgeRefModified(Node ref,
                                      Node.NType.Field edgeField,
                                      PersistenceField field,
                                      int[] indices,
                                      Transaction t)
Overrides:
specialEdgeRefModified in class Node

writeObject

public void writeObject(Shareable object,
                        PersistenceOutput out)
                 throws java.io.IOException
Specified by:
writeObject in interface SharedObjectProvider
Throws:
java.io.IOException