Package net.ontopia.persistence.proxy
Class AbstractFieldInfo
- java.lang.Object
-
- net.ontopia.persistence.proxy.AbstractFieldInfo
-
- All Implemented Interfaces:
FieldHandlerIF,FieldInfoIF
- Direct Known Subclasses:
AggregateFieldInfo,PrimitiveFieldInfo,ReferenceFieldInfo
public abstract class AbstractFieldInfo extends Object implements FieldInfoIF
INTERNAL: An abstract field info class containing the common behaviour for FieldInfoIFs.
-
-
Field Summary
Fields Modifier and Type Field Description protected intcardinalityprotected FieldDescriptorfieldprotected Methodgetterprotected intindexprotected booleanis_collectionprotected Stringnameprotected ClassInfoIFparent_cinfoprotected booleanreadonlyprotected Methodsetterprotected Class<?>value_class-
Fields inherited from interface net.ontopia.persistence.proxy.FieldInfoIF
MANY_TO_MANY, ONE_TO_MANY, ONE_TO_ONE
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractFieldInfo(ClassInfoIF parent_cinfo, String name, int index, Class<?> value_class, boolean is_collection, int cardinality, boolean readonly)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetCardinality()INTERNAL: Gets the field cardinality.FieldDescriptorgetDescriptor()INTERNAL: Returns the underlying FieldDescriptor instance if one exists.protected MethodgetGetterMethod()intgetIndex()INTERNAL: Gets the value field index of this field.String[]getJoinKeys()INTERNAL: Gets the columns in the join table that contains the keys of the referencing object.StringgetJoinTable()INTERNAL: Gets the name of the table which needs to be joined to order to access the field value from the master table.String[]getManyKeys()INTERNAL: Gets the columns in the join table that contains the keys of the referenced object.StringgetName()INTERNAL: Gets the field name.ClassInfoIFgetParentClassInfo()INTERNAL: Gets the class info for the field's object type.protected MethodgetSetterMethod()StringgetTable()INTERNAL: Gets the table in which the field value is stored (aka the master table).ObjectgetValue(Object object)INTERNAL: Gets the field value from the given object.Class<?>getValueClass()INTERNAL: Gets the field value class.booleanisAggregateField()INTERNAL: Returns true if the field is an aggregate field.booleanisCollectionField()INTERNAL: Returns true if the field is a collection field (has a cardinality of 1:1 or 1:M).booleanisPrimitiveField()INTERNAL: Returns true if the field is a primitive field.booleanisReadOnly()INTERNAL: Returns true if this field is read-only field.booleanisReferenceField()INTERNAL: Returns true if the field is a reference field.voidsetValue(Object object, Object value)INTERNAL: Sets the field value for the given object.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.ontopia.persistence.proxy.FieldHandlerIF
bind, getColumnCount, isIdentityField, load, retrieveFieldValues, retrieveSQLValues
-
Methods inherited from interface net.ontopia.persistence.proxy.FieldInfoIF
getValueClassInfo, getValueColumns
-
-
-
-
Field Detail
-
name
protected String name
-
index
protected int index
-
cardinality
protected int cardinality
-
readonly
protected boolean readonly
-
is_collection
protected boolean is_collection
-
parent_cinfo
protected ClassInfoIF parent_cinfo
-
value_class
protected Class<?> value_class
-
field
protected FieldDescriptor field
-
getter
protected Method getter
-
setter
protected Method setter
-
-
Constructor Detail
-
AbstractFieldInfo
protected AbstractFieldInfo(ClassInfoIF parent_cinfo, String name, int index, Class<?> value_class, boolean is_collection, int cardinality, boolean readonly)
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:FieldInfoIFINTERNAL: Gets the field name.- Specified by:
getNamein interfaceFieldInfoIF
-
getIndex
public int getIndex()
Description copied from interface:FieldInfoIFINTERNAL: Gets the value field index of this field. This is the id (index) used by transactions and persistent instances to refer to this particular object field.- Specified by:
getIndexin interfaceFieldInfoIF
-
isReadOnly
public boolean isReadOnly()
Description copied from interface:FieldInfoIFINTERNAL: Returns true if this field is read-only field.- Specified by:
isReadOnlyin interfaceFieldInfoIF
-
getCardinality
public int getCardinality()
Description copied from interface:FieldInfoIFINTERNAL: Gets the field cardinality.- Specified by:
getCardinalityin interfaceFieldInfoIF
-
isCollectionField
public boolean isCollectionField()
Description copied from interface:FieldInfoIFINTERNAL: Returns true if the field is a collection field (has a cardinality of 1:1 or 1:M).- Specified by:
isCollectionFieldin interfaceFieldInfoIF
-
isPrimitiveField
public boolean isPrimitiveField()
Description copied from interface:FieldInfoIFINTERNAL: Returns true if the field is a primitive field. Field value must be of primitive type.- Specified by:
isPrimitiveFieldin interfaceFieldInfoIF
-
isReferenceField
public boolean isReferenceField()
Description copied from interface:FieldInfoIFINTERNAL: Returns true if the field is a reference field. Field value must be of identifiable type.- Specified by:
isReferenceFieldin interfaceFieldInfoIF
-
isAggregateField
public boolean isAggregateField()
Description copied from interface:FieldInfoIFINTERNAL: Returns true if the field is an aggregate field. Field value must be of aggregate type.- Specified by:
isAggregateFieldin interfaceFieldInfoIF
-
getParentClassInfo
public ClassInfoIF getParentClassInfo()
Description copied from interface:FieldInfoIFINTERNAL: Gets the class info for the field's object type.- Specified by:
getParentClassInfoin interfaceFieldInfoIF
-
getValueClass
public Class<?> getValueClass()
Description copied from interface:FieldInfoIFINTERNAL: Gets the field value class. For primitive fields the primitive wrapper class is returned.- Specified by:
getValueClassin interfaceFieldInfoIF
-
getTable
public String getTable()
Description copied from interface:FieldInfoIFINTERNAL: Gets the table in which the field value is stored (aka the master table).- Specified by:
getTablein interfaceFieldInfoIF
-
getValue
public Object getValue(Object object) throws Exception
Description copied from interface:FieldInfoIFINTERNAL: Gets the field value from the given object.- Specified by:
getValuein interfaceFieldInfoIF- Throws:
Exception
-
setValue
public void setValue(Object object, Object value) throws Exception
Description copied from interface:FieldInfoIFINTERNAL: Sets the field value for the given object.- Specified by:
setValuein interfaceFieldInfoIF- Throws:
Exception
-
getGetterMethod
protected Method getGetterMethod()
-
getSetterMethod
protected Method getSetterMethod()
-
getJoinTable
public String getJoinTable()
Description copied from interface:FieldInfoIFINTERNAL: Gets the name of the table which needs to be joined to order to access the field value from the master table.- Specified by:
getJoinTablein interfaceFieldInfoIF
-
getJoinKeys
public String[] getJoinKeys()
Description copied from interface:FieldInfoIFINTERNAL: Gets the columns in the join table that contains the keys of the referencing object.- Specified by:
getJoinKeysin interfaceFieldInfoIF
-
getManyKeys
public String[] getManyKeys()
Description copied from interface:FieldInfoIFINTERNAL: Gets the columns in the join table that contains the keys of the referenced object.- Specified by:
getManyKeysin interfaceFieldInfoIF
-
getDescriptor
public FieldDescriptor getDescriptor()
INTERNAL: Returns the underlying FieldDescriptor instance if one exists.
-
-