de.grogra.graph.impl
Class Node.NType

java.lang.Object
  extended by de.grogra.reflect.MemberDecorator
      extended by de.grogra.reflect.TypeDecorator
          extended by de.grogra.persistence.ManageableType
              extended by de.grogra.graph.impl.Node.NType
All Implemented Interfaces:
Member, Type
Enclosing class:
Node

public static class Node.NType
extends ManageableType


Nested Class Summary
static class Node.NType.BitField
           
static class Node.NType.Field
           
 
Nested classes/interfaces inherited from class de.grogra.persistence.ManageableType
ManageableType.ArrayComponent
 
Field Summary
 
Fields inherited from class de.grogra.persistence.ManageableType
FIELD_NAME_SERIALIZATION, FIELD_NODE_SERIALIZATION, finished, LIST_SERIALIZATION
 
Fields inherited from interface de.grogra.reflect.Type
BOOLEAN, BYTE, CHAR, CLASS, DOUBLE, FLOAT, FLOATING_POINT, INT, INTEGRAL, INVALID, LOCAL_CLASS_MODIFIERS, LONG, MEMBER_CLASS_MODIFIERS, MEMBER_INTERFACE_MODIFIERS, NULL, NUMBER, NUMERIC, OBJECT, SHORT, STRING, TOP_LEVEL_CLASS_MODIFIERS, TOP_LEVEL_INTERFACE_MODIFIERS, TYPE, TYPE_0, VOID
 
Fields inherited from interface de.grogra.reflect.Member
ABSTRACT, ACCESS_MODIFIERS, ARRAY, BRIDGE, CONSTANT, FINAL, INTERFACE, JAVA_MODIFIERS, LOCAL_CLASS, MIN_UNUSED_MODIFIER, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
 
Constructor Summary
Node.NType(java.lang.Class type)
           
Node.NType(Node representative)
           
 
Method Summary
 void addAccessor(AttributeAccessor a)
           
 void addDependency(Attribute src, Attribute dest)
           
 void addIdentityAccessor(ObjectAttribute a)
           
static Node.NType create(Type type, Node.NType supertype)
           
 void declareAlias(java.lang.String name, PersistenceField field)
           
 void declareFieldAttribute(Node.NType.Field f, Attribute a)
           
 void declareFieldAttribute(Node.NType.Field f, Attribute a, double field2Attr)
           
 void declareSpecialEdge(int bits, java.lang.String key, java.lang.Object[] nodeClass)
           
 AttributeAccessor getAccessor(int index)
           
 AttributeAccessor getAccessorById(int id)
           
 int getAttributeCount()
           
 Method getMethod(java.lang.String descriptor)
           
 java.lang.Object getRepresentative()
           
 SpecialEdgeDescriptor getSpecialEdgeDescriptor(int bits)
           
 SpecialEdgeDescriptor getSpecialEdgeDescriptor(java.lang.String key)
           
 java.lang.Object newInstance()
           
 PersistenceField resolveAliasField(java.lang.String name)
           
 void setAttribute(Node.NType.Field f, Attribute a)
           
 void setDependentAttribute(Node.NType.Field f, Attribute a)
           
 void setSpecialEdgeField(Node.NType.Field field, int edge)
           
 ManageableType validate()
           
 
Methods inherited from class de.grogra.persistence.ManageableType
addManagedField, cloneManageable, cloneNonsharedObject, cloneObject, cloneObject, forClass, forName, forType, getFCOFields, getManageableSupertype, getManagedField, getManagedField, getManagedFieldCount, getSerializationMethod, getSupertype, isAssignableFrom, isSerializable, read, readObject, replaceType, setObject, setSerializable, setSerializationMethod, write
 
Methods inherited from class de.grogra.reflect.TypeDecorator
createArray, getArrayType, getBinaryName, getComponentType, getDeclaredField, getDeclaredFieldCount, getDeclaredInterface, getDeclaredInterfaceCount, getDeclaredMethod, getDeclaredMethodCount, getDeclaredType, getDeclaredTypeCount, getDefaultElementValue, getImplementationClass, getLookup, getPackage, getTypeId, getTypeLoader, isInstance, isStringSerializable, toString, undecorate, valueOf
 
Methods inherited from class de.grogra.reflect.MemberDecorator
getDeclaredAnnotation, getDeclaredAnnotationCount, getDeclaringType, getDecoratedMember, getDescriptor, getModifiers, getName, getSimpleName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.grogra.reflect.Member
getDeclaredAnnotation, getDeclaredAnnotationCount, getDeclaringType, getDescriptor, getModifiers, getName, getSimpleName
 

Constructor Detail

Node.NType

public Node.NType(java.lang.Class type)

Node.NType

public Node.NType(Node representative)
Method Detail

addAccessor

public final void addAccessor(AttributeAccessor a)

addDependency

public final void addDependency(Attribute src,
                                Attribute dest)

addIdentityAccessor

public final void addIdentityAccessor(ObjectAttribute a)

create

public static Node.NType create(Type type,
                                Node.NType supertype)

declareAlias

public void declareAlias(java.lang.String name,
                         PersistenceField field)

declareFieldAttribute

public final void declareFieldAttribute(Node.NType.Field f,
                                        Attribute a)

declareFieldAttribute

public final void declareFieldAttribute(Node.NType.Field f,
                                        Attribute a,
                                        double field2Attr)

declareSpecialEdge

public void declareSpecialEdge(int bits,
                               java.lang.String key,
                               java.lang.Object[] nodeClass)

getAccessor

public final AttributeAccessor getAccessor(int index)

getAccessorById

public final AttributeAccessor getAccessorById(int id)

getAttributeCount

public final int getAttributeCount()

getMethod

public final Method getMethod(java.lang.String descriptor)

getRepresentative

public final java.lang.Object getRepresentative()
Specified by:
getRepresentative in class ManageableType

getSpecialEdgeDescriptor

public SpecialEdgeDescriptor getSpecialEdgeDescriptor(int bits)

getSpecialEdgeDescriptor

public SpecialEdgeDescriptor getSpecialEdgeDescriptor(java.lang.String key)

newInstance

public java.lang.Object newInstance()
                             throws java.lang.reflect.InvocationTargetException,
                                    java.lang.InstantiationException,
                                    java.lang.IllegalAccessException
Specified by:
newInstance in interface Type
Overrides:
newInstance in class TypeDecorator
Throws:
java.lang.reflect.InvocationTargetException
java.lang.InstantiationException
java.lang.IllegalAccessException

resolveAliasField

public PersistenceField resolveAliasField(java.lang.String name)
Overrides:
resolveAliasField in class ManageableType

setAttribute

public final void setAttribute(Node.NType.Field f,
                               Attribute a)

setDependentAttribute

public final void setDependentAttribute(Node.NType.Field f,
                                        Attribute a)

setSpecialEdgeField

public final void setSpecialEdgeField(Node.NType.Field field,
                                      int edge)

validate

public ManageableType validate()
Overrides:
validate in class ManageableType