Interface ValueMapping

All Superinterfaces:
MetaDataContext, MetaDataModes, Serializable, ValueMetaData
All Known Implementing Classes:
FieldMapping, ValueMappingImpl

public interface ValueMapping extends ValueMetaData, MetaDataContext, Serializable
Specialization of value metadata for relational databases.
Since:
0.4.0
Author:
Abe White
  • Field Details

    • JOIN_FORWARD

      static final int JOIN_FORWARD
      Standard forward join.
      See Also:
    • JOIN_INVERSE

      static final int JOIN_INVERSE
      Inverse join.
      See Also:
    • JOIN_EXPECTED_INVERSE

      static final int JOIN_EXPECTED_INVERSE
      Inverse join that is marked up as a forward join because the backing mapping expects an inverse direction.
      See Also:
    • POLY_TRUE

      static final int POLY_TRUE
      A fully polymorphic relation (the default).
      See Also:
    • POLY_FALSE

      static final int POLY_FALSE
      A non-polymorphic relation.
      See Also:
    • POLY_JOINABLE

      static final int POLY_JOINABLE
      A relation that can hold any joinable subclass type.
      See Also:
  • Method Details

    • getValueInfo

      ValueMappingInfo getValueInfo()
      Raw mapping data.
    • getHandler

      ValueHandler getHandler()
      The handler used for this value, or null if none.
    • setHandler

      void setHandler(ValueHandler handler)
      The handler used for this value, or null if none.
    • getMappingRepository

      MappingRepository getMappingRepository()
      Convenience method to perform cast from MetaDataContext.getRepository().
    • getFieldMapping

      FieldMapping getFieldMapping()
      Convenience method to perform cast from ValueMetaData.getFieldMetaData().
    • getTypeMapping

      ClassMapping getTypeMapping()
      Convenience method to perform cast from ValueMetaData.getTypeMetaData().
    • getDeclaredTypeMapping

      ClassMapping getDeclaredTypeMapping()
      Convenience method to perform cast from ValueMetaData.getDeclaredTypeMetaData().
    • getEmbeddedMapping

      ClassMapping getEmbeddedMapping()
      Convenience method to perform cast from ValueMetaData.getEmbeddedMetaData().
    • getValueMappedByMapping

      FieldMapping getValueMappedByMapping()
      Convenience method to perform cast from ValueMetaData.getValueMappedByMetaData().
    • getColumns

      Column[] getColumns()
      The columns that hold the data for this value.
    • setColumns

      void setColumns(Column[] cols)
      The columns that hold the data for this value.
    • getColumnIO

      ColumnIO getColumnIO()
      I/O information on the foreign key, or columns if this value doesn't have a key.
    • setColumnIO

      void setColumnIO(ColumnIO io)
      I/O information on the foreign key, or columns if this value doesn't have a key.
    • getForeignKey

      ForeignKey getForeignKey()
      If this value joins to another record, the foreign key.
    • getForeignKey

      ForeignKey getForeignKey(ClassMapping target)
      Return an equivalent of this value's foreign key, but joining to the given target, which may be an unjoined subclass of this value's related type.
    • setForeignKey

      void setForeignKey(ForeignKey fk)
      If this value joins to another record, the foreign key.
    • getJoinDirection

      int getJoinDirection()
      The join direction.
    • setJoinDirection

      void setJoinDirection(int direction)
      The join direction.
    • setForeignKey

      void setForeignKey(Row row, OpenJPAStateManager rel) throws SQLException
      Sets this value's foreign key to the given related object. The object may be null.
      Throws:
      SQLException
    • setForeignKey

      void setForeignKey(Row row, OpenJPAStateManager rel, int targetNumber) throws SQLException
      Sets this value's foreign key to the given related object. The object may be null. If the object is one of2or more foreign keys with the same target, the targetNumber specifies the one to set.
      Throws:
      SQLException
    • whereForeignKey

      void whereForeignKey(Row row, OpenJPAStateManager rel) throws SQLException
      Sets this value's foreign key to the given related object. The object may be null.
      Throws:
      SQLException
    • getIndependentTypeMappings

      ClassMapping[] getIndependentTypeMappings()
      Return all independently-mapped joinable types for this value, depending on whether this value is polymorphic and how the related type is mapped. Return an empty array if value type is not PC.
    • getSelectSubclasses

      int getSelectSubclasses()
      Return the org.apache.openjpa.sql.Select subclasses constant for loading this relation, based on how the related type is mapped, whether this relation is polymorphic, and whether it is configured to use class criteria.
    • getValueUnique

      Unique getValueUnique()
      Unique constraint on this value's columns, or null if none.
    • setValueUnique

      void setValueUnique(Unique unq)
      Unique constraint on this value's columns, or null if none.
    • getValueIndex

      Index getValueIndex()
      Index on this value's columns, or null if none.
    • setValueIndex

      void setValueIndex(Index idx)
      Index on this value's columns, or null if none.
    • getUseClassCriteria

      boolean getUseClassCriteria()
      Whether to use class criteria when joining to related type.
    • setUseClassCriteria

      void setUseClassCriteria(boolean criteria)
      Whether to use class criteria when joining to related type.
    • getPolymorphic

      int getPolymorphic()
      The degree to which this relation is polymorphic.
    • setPolymorphic

      void setPolymorphic(int polymorphic)
      The degree to which this relation is polymorphic.
    • refSchemaComponents

      void refSchemaComponents()
      Increase the reference count on used schema components.
    • mapConstraints

      @Deprecated void mapConstraints(String name, boolean adapt)
      Deprecated.
      Map indexes and constraints for this value, using the current ValueMappingInfo. The foreign key or columns of this value must be set before calling this method.
    • mapConstraints

      void mapConstraints(DBIdentifier name, boolean adapt)
      Map indexes and constraints for this value, using the current ValueMappingInfo. The foreign key or columns of this value must be set before calling this method.
    • clearMapping

      void clearMapping()
      Clear mapping information, including strategy.
    • syncMappingInfo

      void syncMappingInfo()
      Update MappingInfo with our current mapping information.
    • copyMappingInfo

      void copyMappingInfo(ValueMapping vm)
      Copy mapping info from the given instance to this one.