|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.hypergraphdb.type.JavaTypeFactory
public class JavaTypeFactory
The JavaTypeFactory is used to infer HyperGraph types based on
Java beans. Java bean classes are converted to instances of
RecordType and Java bean instances to the corresponding
Records. Only properties that are both readable and writeable
are mapped to HyperGraph Slots.
| Constructor Summary | |
|---|---|
JavaTypeFactory()
|
|
| Method Summary | |
|---|---|
void |
assign(java.lang.Object bean,
java.lang.String property,
java.lang.Object value)
|
void |
assignPrivate(java.lang.Class<?> clazz,
java.lang.Object x,
java.lang.String field,
java.lang.Object value)
|
HGAtomType |
defineHGType(java.lang.Class<?> javaClass,
HGHandle typeHandle)
Create a new HyperGraphDB type for the given Java class. |
DefaultJavaTypeMapper |
getDefaultJavaMapper()
|
HGAtomType |
getJavaBinding(HGHandle typeHandle,
HGAtomType hgType,
java.lang.Class<?> javaClass)
Create a type wrapper for a given raw HyperGraphDB type. |
JavaObjectMapper |
getJavaObjectMapper()
|
java.util.List<JavaTypeMapper> |
getMappers()
|
HGHandle |
getSlotHandle(java.lang.String label,
HGHandle type)
|
void |
initNonDefaultMappers()
|
static boolean |
isAbstract(java.lang.Class<?> c)
|
static boolean |
isDefaultConstructible(java.lang.Class<?> c)
|
static boolean |
isHGInstantiable(java.lang.Class<?> c)
|
static boolean |
isLink(java.lang.Class<?> c)
|
java.lang.Object |
retrievePrivate(java.lang.Class<?> clazz,
java.lang.Object x,
java.lang.String field)
|
void |
setHyperGraph(HyperGraph graph)
During load time, set the HyperGraph
instance to which this atom belongs. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public JavaTypeFactory()
| Method Detail |
|---|
public void initNonDefaultMappers()
public void assign(java.lang.Object bean,
java.lang.String property,
java.lang.Object value)
public void assignPrivate(java.lang.Class<?> clazz,
java.lang.Object x,
java.lang.String field,
java.lang.Object value)
public java.lang.Object retrievePrivate(java.lang.Class<?> clazz,
java.lang.Object x,
java.lang.String field)
public static boolean isAbstract(java.lang.Class<?> c)
public static boolean isDefaultConstructible(java.lang.Class<?> c)
public static boolean isLink(java.lang.Class<?> c)
public static boolean isHGInstantiable(java.lang.Class<?> c)
public HGHandle getSlotHandle(java.lang.String label,
HGHandle type)
public HGAtomType defineHGType(java.lang.Class<?> javaClass,
HGHandle typeHandle)
JavaTypeMapper
Create a new HyperGraphDB type for the given Java class. The HGHandle
of the type pre-created and provided as a parameter.
This method should return a brand new HGAtomType that will subsequently
be saved as a type atom with handle typeHandle and associated with
the javaClass class.
defineHGType in interface JavaTypeMapper
public HGAtomType getJavaBinding(HGHandle typeHandle,
HGAtomType hgType,
java.lang.Class<?> javaClass)
JavaTypeMapperCreate a type wrapper for a given raw HyperGraphDB type. The type wrapper should work with the regular Java runtime instance of an atom and use the underlying HG type for actual storage and retrieval.
getJavaBinding in interface JavaTypeMapperpublic void setHyperGraph(HyperGraph graph)
HGGraphHolderDuring load time, set the HyperGraph
instance to which this atom belongs.
setHyperGraph in interface HGGraphHolderpublic DefaultJavaTypeMapper getDefaultJavaMapper()
public JavaObjectMapper getJavaObjectMapper()
public java.util.List<JavaTypeMapper> getMappers()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||