Package net.ontopia.persistence.proxy
Interface FieldInfoIF
-
- All Superinterfaces:
FieldHandlerIF
- All Known Implementing Classes:
AbstractFieldInfo
,AggregateFieldInfo
,IdentityFieldInfo
,PrimitiveFieldInfo
,ReferenceFieldInfo
public interface FieldInfoIF extends FieldHandlerIF
INTERNAL: A field descriptor-like class that is used by the RDBMS proxy implementation to access the information it needs about the object relational field descriptor in an optimized manner.A field info is also able to perform the read and write operations required by field handlers. In addition it contains an optimized representation of the related field descriptor. The field info implementations also knows how to interact with the data repository using the FieldHandlerIF interface.
-
-
Field Summary
Fields Modifier and Type Field Description static int
MANY_TO_MANY
Flag indicating that the field represents a M:M relationship.static int
ONE_TO_MANY
Flag indicating that the field represents a 1:M relationship.static int
ONE_TO_ONE
Flag indicating that the field represents a 1:1 relationship.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
getCardinality()
INTERNAL: Gets the field cardinality.int
getIndex()
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.String
getJoinTable()
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.String
getName()
INTERNAL: Gets the field name.ClassInfoIF
getParentClassInfo()
INTERNAL: Gets the class info for the field's object type.String
getTable()
INTERNAL: Gets the table in which the field value is stored (aka the master table).Object
getValue(Object object)
INTERNAL: Gets the field value from the given object.Class<?>
getValueClass()
INTERNAL: Gets the field value class.ClassInfoIF
getValueClassInfo()
INTERNAL: Gets the class info for the field's value type.String[]
getValueColumns()
INTERNAL: Returns the names of the columns that the field spans.boolean
isAggregateField()
INTERNAL: Returns true if the field is an aggregate field.boolean
isCollectionField()
INTERNAL: Returns true if the field is a collection field (has a cardinality of 1:1 or 1:M).boolean
isPrimitiveField()
INTERNAL: Returns true if the field is a primitive field.boolean
isReadOnly()
INTERNAL: Returns true if this field is read-only field.boolean
isReferenceField()
INTERNAL: Returns true if the field is a reference field.void
setValue(Object object, Object value)
INTERNAL: Sets the field value for the given object.-
Methods inherited from interface net.ontopia.persistence.proxy.FieldHandlerIF
bind, getColumnCount, isIdentityField, load, retrieveFieldValues, retrieveSQLValues
-
-
-
-
Field Detail
-
ONE_TO_ONE
static final int ONE_TO_ONE
Flag indicating that the field represents a 1:1 relationship.- See Also:
- Constant Field Values
-
ONE_TO_MANY
static final int ONE_TO_MANY
Flag indicating that the field represents a 1:M relationship.- See Also:
- Constant Field Values
-
MANY_TO_MANY
static final int MANY_TO_MANY
Flag indicating that the field represents a M:M relationship.- See Also:
- Constant Field Values
-
-
Method Detail
-
getName
String getName()
INTERNAL: Gets the field name.
-
getIndex
int getIndex()
INTERNAL: 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.
-
getCardinality
int getCardinality()
INTERNAL: Gets the field cardinality.
-
isReadOnly
boolean isReadOnly()
INTERNAL: Returns true if this field is read-only field.
-
isCollectionField
boolean isCollectionField()
INTERNAL: Returns true if the field is a collection field (has a cardinality of 1:1 or 1:M).
-
isPrimitiveField
boolean isPrimitiveField()
INTERNAL: Returns true if the field is a primitive field. Field value must be of primitive type.
-
isReferenceField
boolean isReferenceField()
INTERNAL: Returns true if the field is a reference field. Field value must be of identifiable type.
-
isAggregateField
boolean isAggregateField()
INTERNAL: Returns true if the field is an aggregate field. Field value must be of aggregate type.
-
getParentClassInfo
ClassInfoIF getParentClassInfo()
INTERNAL: Gets the class info for the field's object type.
-
getValueClassInfo
ClassInfoIF getValueClassInfo()
INTERNAL: Gets the class info for the field's value type. Note that primitive value classes don't have a class info.
-
getValueClass
Class<?> getValueClass()
INTERNAL: Gets the field value class. For primitive fields the primitive wrapper class is returned.
-
getTable
String getTable()
INTERNAL: Gets the table in which the field value is stored (aka the master table).
-
getValueColumns
String[] getValueColumns()
INTERNAL: Returns the names of the columns that the field spans.
-
getValue
Object getValue(Object object) throws Exception
INTERNAL: Gets the field value from the given object.- Throws:
Exception
-
setValue
void setValue(Object object, Object value) throws Exception
INTERNAL: Sets the field value for the given object.- Throws:
Exception
-
getJoinTable
String getJoinTable()
INTERNAL: Gets the name of the table which needs to be joined to order to access the field value from the master table.
-
getJoinKeys
String[] getJoinKeys()
INTERNAL: Gets the columns in the join table that contains the keys of the referencing object.
-
getManyKeys
String[] getManyKeys()
INTERNAL: Gets the columns in the join table that contains the keys of the referenced object.
-
-