Class ReferenceFieldInfo

java.lang.Object
net.ontopia.persistence.proxy.AbstractFieldInfo
net.ontopia.persistence.proxy.ReferenceFieldInfo
All Implemented Interfaces:
FieldHandlerIF, FieldInfoIF

public class ReferenceFieldInfo extends AbstractFieldInfo
INTERNAL: A field that references objects. A reference field is a field that references the identity of instances of a descriptor class. It is also known as a foreign key field.

A reference field is a composite of one or more fields that together references the identity of an instance of a descriptor class. The number of fields and the types of those fields must match the identity fields of the referenced descriptor class.

  • Field Details

    • value_cinfo

      protected ClassInfoIF value_cinfo
    • identity_field

      protected FieldInfoIF identity_field
    • value_columns

      protected String[] value_columns
    • column_count

      protected int column_count
  • Constructor Details

  • Method Details

    • getValueClassInfo

      public ClassInfoIF getValueClassInfo()
      Description copied from interface: FieldInfoIF
      INTERNAL: Gets the class info for the field's value type. Note that primitive value classes don't have a class info.
    • getColumnCount

      public int getColumnCount()
      Description copied from interface: FieldHandlerIF
      INTERNAL: Returns the number of columns that the field spans.
    • isIdentityField

      public boolean isIdentityField()
      Description copied from interface: FieldHandlerIF
      INTERNAL: Returns true if the field handler references an object identity field.
    • getValueColumns

      public String[] getValueColumns()
      Description copied from interface: FieldInfoIF
      INTERNAL: Returns the names of the columns that the field spans.
    • load

      public Object load(AccessRegistrarIF registrar, TicketIF ticket, ResultSet rs, int rsindex, boolean direct) throws SQLException
      INTERNAL: Loads from its containing fields the identity of an object.
      Throws:
      SQLException
    • bind

      public void bind(Object value, PreparedStatement stm, int stmt_index) throws SQLException
      INTERNAL: Binds the identity keys to the containing fields.
      Throws:
      SQLException
    • retrieveFieldValues

      public void retrieveFieldValues(Object value, List<Object> field_values)
    • retrieveSQLValues

      public void retrieveSQLValues(Object value, List<SQLValueIF> sql_values)
    • toString

      public String toString()
      Overrides:
      toString in class Object