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 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.
      • 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.