Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.meta
Class FieldMetaData

    java.lang.Object
      org.apache.openjpa.meta.Extensions
          org.apache.openjpa.meta.FieldMetaData

All Implemented Interfaces:
  Serializable, Commentable, MetaDataContext, MetaDataModes, ValueMetaData

Direct Known Subclasses:
  FieldMapping

    public class FieldMetaData

extends Extensions
implements ValueMetaData, MetaDataContext, MetaDataModes, Commentable

Metadata for a managed class field.

Author:
  Abe White
See Also:
  Serialized Form

Nested Class Summary
`static class` | `FieldMetaData.MemberProvider` Serializable wrapper around a `Method` or `Field`.

Field Summary
`static int` | `MANAGE_NONE` Constant specifying the management level of a field.
`static int` | `MANAGE_PERSISTENT` Constant specifying the management level of a field.
`static int` | `MANAGE_TRANSACTIONAL` Constant specifying the management level of a field.
`static int` | `MANY_TO_MANY`
`static int` | `MANY_TO_ONE`
`static int` | `NULL_DEFAULT` Constant specifying to use a datastore default value to persist null values in object fields.
`static int` | `NULL_EXCEPTION` Constant specifying to throw an exception when attempting to persist null values in object fields.
`static int` | `NULL_NONE` Constant specifying to use a datastore null to persist null values in object fields.
`static int` | `NULL_UNSET` Constant specifying that no null-value was given.
`static int` | `ONE_TO_MANY`
`static int` | `ONE_TO_ONE`

Fields inherited from class org.apache.openjpa.meta.Extensions
`OPENJPA`

Fields inherited from interface org.apache.openjpa.meta.ValueMetaData
`CASCADE_AUTO, CASCADE_IMMEDIATE, CASCADE_NONE, MAPPED_BY_PK`

Fields inherited from interface org.apache.openjpa.meta.MetaDataModes
`MODE_ALL, MODE_ANN_MAPPING, MODE_MAPPING, MODE_MAPPING_INIT, MODE_META, MODE_NONE, MODE_QUERY`

Fields inherited from interface org.apache.openjpa.lib.xml.Commentable
`EMPTY_COMMENTS`

Constructor Summary
`protected` | `FieldMetaData(String name, Class<?> type, ClassMetaData owner)` Constructor.

Method Summary
`ClassMetaData` | `addEmbeddedMetaData()` Add embedded metadata for this value.
`ClassMetaData` | `addEmbeddedMetaData(int access)` Add embedded metadata for this value with the given access type
`protected void` | `addExtensionKeys(Collection exts)` Add all the known extension keys to the specified collection; any implementation that utilized new extensions should override this method to include both the known extensions of its superclass as well as its own extension keys.
`void` | `backingMember(Member member)` Supply the backing member object; this allows us to utilize parameterized type information if available.
`int` | `compareTo(Object other)`
`void` | `copy(FieldMetaData field)` Copy state from the given field to this one.
`void` | `copy(ValueMetaData vmd)` Copy state from the given value to this one.
`boolean` | `equals(Object other)`
`int` | `getAccessType()` Gets the access type used by this field.
`int` | `getAssociationType()`
`Member` | `getBackingMember()` Return the backing member supplied in `backingMember(java.lang.reflect.Member)`.
`int` | `getCascadeAttach()` Cascade behavior for attach operation.
`int` | `getCascadeDelete()` Cascade behavior for delete operation.
`int` | `getCascadeDetach()` Cascade behavior for detach operation.
`int` | `getCascadePersist()` Cascade behavior for persist operation.
`int` | `getCascadeRefresh()` Cascade behavior for refresh operation.
`String[]` | `getComments()` Return comments, or empty array if none.
`String[]` | `getCustomFetchGroups()` Gets the name of the custom fetch groups those are associated to this receiver.
`int` | `getDeclaredIndex()` The relative index of this persistent/transactional field.
`Class` | `getDeclaredType()` Return the declared class of the value.
`int` | `getDeclaredTypeCode()` Return the declared type code of the value.
`ClassMetaData` | `getDeclaredTypeMetaData()` Return metadata for the value's class, if the type is persistent.
`ClassMetaData` | `getDeclaringMetaData()` The declaring class.
`Class<?>` | `getDeclaringType()` The declaring class.
`ClassMetaData` | `getDefiningMetaData()` The class that defines the metadata for this field.
`ValueMetaData` | `getElement()` Metadata about the element value.
`ClassMetaData` | `getEmbeddedMetaData()` The embedded class metadata for the value.
`String` | `getExternalizer()` The name of this field's externalizer, or null if none.
`Method` | `getExternalizerMethod()` The externalizer method.
`Object` | `getExternalValue(Object val, StoreContext ctx)` Convert the given field value to its external value through the provided externalizer, or return the value as-is if no externalizer.
`Map` | `getExternalValueMap()` Return the mapping of field values to external values.
`String` | `getExternalValues()` Properties string mapping field values to external values.
`String` | `getFactory()` The name of this field's factory, or null if none.
`Member` | `getFactoryMethod()` The factory method or constructor.
`FieldMetaData` | `getFieldMetaData()` Return the owning field for this value.
`Object` | `getFieldValue(Object val, StoreContext ctx)` Return the result of passing the given external value through the factory to get the field value.
`Map` | `getFieldValueMap()` Return the mapping of external values to field values.
`String` | `getFullName()` Deprecated. Use getFullName(boolean) instead.
`String` | `getFullName(boolean embedOwner)` The field name, qualified by the owning class and optionally the embedding owner's name (if any).
`int` | `getIndex()` The absolute index of this persistent/transactional field.
`Object` | `getInitializer()` The initializer used by the field, or null if none.
`String` | `getInverse()` Logical inverse field.
`FieldMetaData[]` | `getInverseMetaDatas()` Return all inverses of this field.
`ValueMetaData` | `getKey()` Metadata about the key value.
`int` | `getListingIndex()` The index in which this field was listed in the metadata.
`String` | `getLoadFetchGroup()` The fetch group that is to be loaded when this receiver is loaded, or null if none set.
`int` | `getManagement()` Return the management level for the field.
`String` | `getMappedBy()` The field that this field shares a mapping with.
`FieldMetaData` | `getMappedByField(ClassMetaData meta, String mappedBy)`
`String` | `getMappedByIdValue()`
`FieldMetaData` | `getMappedByMetaData()` The field that this field shares a mapping with.
`String` | `getName()` The field name.
`int` | `getNullValue()` How the data store should treat null values for this field: `NULL_UNSET`: no value supplied `NULL_NONE`: leave null values as null in the data store `NULL_EXCEPTION`: throw an exception if this field is null at commit `NULL_DEFAULT`: use the database default if this field is null at commit Defaults to `NULL_UNSET`.
`Class<?>` | `getObjectIdFieldType()` For a primary key field, return the type of the corresponding object id class field.
`int` | `getObjectIdFieldTypeCode()` For a primary key field, return the type of the corresponding object id class field.
`String` | `getOrderDeclaration()` String declaring the orderings for this field to be applied on load, or null.
`Order[]` | `getOrders()` The orderings for this field to be applied on load, or empty array.
`int` | `getPrimaryKeyIndex()` The absolute primary key index for this field, or -1 if not a primary key.
`Class<?>` | `getProxyType()` The type this field was initialized with, and therefore the type to use for proxies when loading data into this field.
`String` | `getRealName()` The field name, qualified by the defining class.
`Class<?>` | `getRelationType()`
`MetaDataRepository` | `getRepository()` The metadata repository.
`int` | `getResolve()` Resolve mode for this field.
`Class` | `getType()` The value class.
`int` | `getTypeCode()` The type code of the value class.
`ClassMetaData` | `getTypeMetaData()` The metadata for the value class, if the type is persistent.
`Class<?>` | `getTypeOverride()` User-supplied type overriding assumed type based on field.
`int` | `getUpdateStrategy()` The strategy to use when updating the field.
`ValueMetaData` | `getValue()` MetaData about the field value.
`String` | `getValueMappedBy()` The field that this value shares a mapping with.
`FieldMetaData` | `getValueMappedByMetaData()` The field that this value shares a mapping with.
`SequenceMetaData` | `getValueSequenceMetaData()` Metadata for the value sequence.
`String` | `getValueSequenceName()` The value sequence name, or null for none.
`int` | `getValueStrategy()` The strategy to use for insert value generation.
`int` | `hashCode()`
`boolean` | `isDeclaredTypePC()` Whether the type is a persistence capable instance.
`boolean` | `isDefaultFetchGroupExplicit()` Whether the default fetch group setting is explicit.
`boolean` | `isDelayCapable()`
`boolean` | `isElementCollection()`
`boolean` | `isEmbedded()` This attribute is a hint to the implementation to store this value in the same structure as the class, rather than as a separate datastore structure.
`boolean` | `isEmbeddedPC()` Whether this is an embedded persistence capable value.
`boolean` | `isExplicit()` Whether this field is explicitly declared in the metadata.
`boolean` | `isExternalized()` Whether the field is externalized.
`boolean` | `isInDefaultFetchGroup()` Whether this field is in the default fetch group.
`boolean` | `isInFetchGroup(String fg)` Whether this field is in the given fetch group.
`boolean` | `isLRS()` Whether this field is backed by a large result set.
`boolean` | `isMapped()` Return whether this field is mapped to the datastore.
`boolean` | `isMappedById()`
`boolean` | `isPersistentCollection()`
`boolean` | `isPrimaryKey()` Whether this is a primary key field.
`boolean` | `isSerialized()` Whether this value is serialized when stored.
`boolean` | `isStream()` Whether this field is backed by a stream.
`boolean` | `isTransient()` Return whether this is a transient field.
`boolean` | `isTypePC()` Whether the type is a persistence capable instance.
`boolean` | `isUsedInOrderBy()` Check if this field is used by other field as "order by" value.
`boolean` | `isValueGenerated()`
`boolean` | `isVersion()` Whether this field holds optimistic version information.
`Object` | `order(Object val)` Order this field value when it is loaded.
`boolean` | `resolve(int mode)` Resolve and validate metadata.
`void` | `setAccessType(int fCode)` Sets access type of this field.
`void` | `setAssociationType(int type)`
`void` | `setCascadeAttach(int attach)` Cascade behavior for attach operation.
`void` | `setCascadeDelete(int delete)` Cascade behavior for deletion.
`void` | `setCascadeDetach(int detach)` Cascade behavior for detach operation.
`void` | `setCascadePersist(int persist)` Cascade behavior for persist operation.
`void` | `setCascadeRefresh(int refresh)` Cascade behavior for refresh operation.
`void` | `setComments(String[] comments)` Set comments.
`void` | `setDeclaredIndex(int index)` The relative index of this persistent/transactional field.
`void` | `setDeclaredType(Class type)` Set the declared class of the value.
`void` | `setDeclaredTypeCode(int type)` Set the type code for the value.
`void` | `setDeclaringType(Class<?> cls)` The declaring class.
`void` | `setDefaultFetchGroupExplicit(boolean explicit)` Whether the default fetch group setting is explicit.
`void` | `setDelayCapable(Boolean delayCapable)`
`void` | `setElementCollection(boolean isElementCollection)`
`void` | `setEmbedded(boolean embedded)` This attribute is a hint to the implementation to store this value in the same structure as the class, rather than as a separate datastore structure.
`void` | `setExplicit(boolean explicit)` Whether this field is explicitly declared in the metadata.
`void` | `setExternalizer(String externalizer)` The name of this field's externalizer, or null if none.
`void` | `setExternalValues(String values)` Properties string mapping field values to external values.
`void` | `setFactory(String factory)` The name of this field's factory, or null if none.
`void` | `setInDefaultFetchGroup(boolean dfg)` Whether this field is in the default fetch group.
`void` | `setIndex(int index)` The absolute index of this persistent/transactional field.
`void` | `setInFetchGroup(String fg, boolean in)` Set whether this field is in the given fetch group.
`void` | `setInitializer(Object initializer)` The initializer used by the field, or null if none.
`void` | `setInverse(String inverse)` Logical inverse field.
`void` | `setListingIndex(int index)` The index in which this field was listed in the metadata.
`void` | `setLoadFetchGroup(String lfg)` The fetch group that is to be loaded when this receiver is loaded, or null if none set.
`void` | `setLRS(boolean lrs)` Whether this field is backed by a large result set.
`void` | `setManagement(int manage)` Return the management level for the field.
`void` | `setMappedBy(String mapped)` The field that this field shares a mapping with.
`void` | `setMappedByIdValue(String mappedByIdValue)`
`void` | `setNullValue(int nullValue)` How the data store should treat null values for this field: `NULL_UNSET`: no value supplied `NULL_NONE`: leave null values as null in the data store `NULL_EXCEPTION`: throw an exception if this field is null at commit `NULL_DEFAULT`: use the database default if this field is null at commit Defaults to `NULL_UNSET`.
`void` | `setOrderDeclaration(String dec)` String declaring the orderings for this field to be applied on load, or null.
`void` | `setOrders(Order[] orders)` The orderings for this field to be applied on load.
`void` | `setPersistentCollection(boolean persistentCollection)`
`void` | `setPrimaryKey(boolean primKey)` Whether this is a primary key field.
`void` | `setPrimaryKeyIndex(int index)` The absolute primary key index for this field, or -1 if not a primary key.
`void` | `setProxyType(Class<?> type)` The type this field was initialized with, and therefore the type to use for proxies when loading data into this field.
`void` | `setResolve(int mode)` Resolve mode for this field.
`void` | `setResolve(int mode, boolean on)` Resolve mode for this field.
`void` | `setSerialized(boolean serialized)` Whether this value is serialized when stored.
`void` | `setStream(boolean stream)` Whether this field is backed by a stream.
`void` | `setTransient(boolean trans)` Return whether this is a transient field.
`void` | `setType(Class type)` The value class.
`void` | `setTypeCode(int code)` The type code of the value class.
`void` | `setTypeOverride(Class type)` User-supplied type overriding assumed type based on field.
`void` | `setUpdateStrategy(int strategy)` Set the update strategy.
`void` | `setUsedInOrderBy(boolean isUsed)` Whether this field is used by other field as "order by" value .
`void` | `setUsesImplData(Boolean implData)` Whether this field uses impl data in conjunction with standard field data when acting on a `OpenJPAStateManager`.
`void` | `setUsesIntermediate(boolean intermediate)` Whether this field uses intermediate data when loading/storing information through a `OpenJPAStateManager`.
`void` | `setValueGenerated(boolean generated)`
`void` | `setValueMappedBy(String mapped)` The field that this value shares a mapping with.
`void` | `setValueSequenceName(String seqName)` The value sequence name, or null for none.
`void` | `setValueStrategy(int strategy)` The strategy to use for insert value generation.
`void` | `setVersion(boolean version)` Whether this field holds optimistic version information.
`String` | `toString()`
`Boolean` | `usesImplData()` Whether this field uses impl data in conjunction with standard field data when acting on a `OpenJPAStateManager`.
`boolean` | `usesIntermediate()` Whether this field uses intermediate data when loading/storing information through a `OpenJPAStateManager`.

Methods inherited from class org.apache.openjpa.meta.Extensions
`addExtension, addExtension, copy, getBooleanExtension, getBooleanExtension, getDoubleExtension, getDoubleExtension, getEmbeddedExtensions, getEmbeddedExtensions, getExtensionKeys, getExtensionKeys, getExtensionVendors, getIntExtension, getIntExtension, getObjectExtension, getObjectExtension, getStringExtension, getStringExtension, hasExtension, hasExtension, isEmpty, removeEmbeddedExtensions, removeEmbeddedExtensions, removeExtension, removeExtension, validateDataStoreExtensionPrefix, validateExtensionKeys`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### NULL_UNSET

    public static final int NULL_UNSET

  Constant specifying that no null-value was given.

  See Also:
    Constant Field Values

### NULL_NONE

    public static final int NULL_NONE

  Constant specifying to use a datastore null to persist null values in object fields.

  See Also:
    Constant Field Values

### NULL_DEFAULT

    public static final int NULL_DEFAULT

  Constant specifying to use a datastore default value to persist null values in object fields.

  See Also:
    Constant Field Values

### NULL_EXCEPTION

    public static final int NULL_EXCEPTION

  Constant specifying to throw an exception when attempting to persist null values in object fields.

  See Also:
    Constant Field Values

### MANAGE_PERSISTENT

    public static final int MANAGE_PERSISTENT

  Constant specifying the management level of a field.

  See Also:
    Constant Field Values

### MANAGE_TRANSACTIONAL

    public static final int MANAGE_TRANSACTIONAL

  Constant specifying the management level of a field.

  See Also:
    Constant Field Values

### MANAGE_NONE

    public static final int MANAGE_NONE

  Constant specifying the management level of a field.

  See Also:
    Constant Field Values

### ONE_TO_ONE

    public static final int ONE_TO_ONE

See Also:
  Constant Field Values

### ONE_TO_MANY

    public static final int ONE_TO_MANY

See Also:
  Constant Field Values

### MANY_TO_ONE

    public static final int MANY_TO_ONE

See Also:
  Constant Field Values

### MANY_TO_MANY

    public static final int MANY_TO_MANY

See Also:
  Constant Field Values

Constructor Detail

### FieldMetaData

    protected FieldMetaData(String name,
                            Class<?> type,
                            ClassMetaData owner)

  Constructor.

  Parameters:
    `name` - the field name
    `type` - the field type
    `owner` - the owning class metadata

Method Detail

### backingMember

    public void backingMember(Member member)

  Supply the backing member object; this allows us to utilize parameterized type information if available. Sets the access style of this receiver based on whether the given member represents a field or getter method.

### getBackingMember

    public Member getBackingMember()

  Return the backing member supplied in `backingMember(java.lang.reflect.Member)`.

### getRepository

    public MetaDataRepository getRepository()

  The metadata repository.

  Specified by:
    `getRepository` in interface `MetaDataContext`
  Specified by:
    `getRepository` in class `Extensions`

### getDefiningMetaData

    public ClassMetaData getDefiningMetaData()

  The class that defines the metadata for this field.

### getDeclaringType

    public Class<?> getDeclaringType()

  The declaring class.

### setDeclaringType

    public void setDeclaringType(Class<?> cls)

  The declaring class.

### getDeclaringMetaData

    public ClassMetaData getDeclaringMetaData()

  The declaring class.

### getName

    public String getName()

  The field name.

### getFullName

    public String getFullName()

  Deprecated. Use getFullName(boolean) instead.

  The field name, qualified by the owning class.

### getFullName

    public String getFullName(boolean embedOwner)

  The field name, qualified by the owning class and optionally the embedding owner's name (if any).

### getRealName

    public String getRealName()

  The field name, qualified by the defining class.

### getValue

    public ValueMetaData getValue()

  MetaData about the field value.

### getKey

    public ValueMetaData getKey()

  Metadata about the key value.

### getElement

    public ValueMetaData getElement()

  Metadata about the element value.

### isMapped

    public boolean isMapped()

  Return whether this field is mapped to the datastore. By default, returns true for all persistent fields whose defining class is mapped.

### getProxyType

    public Class<?> getProxyType()

  The type this field was initialized with, and therefore the type to use for proxies when loading data into this field.

### setProxyType

    public void setProxyType(Class<?> type)

  The type this field was initialized with, and therefore the type to use for proxies when loading data into this field.

### getInitializer

    public Object getInitializer()

  The initializer used by the field, or null if none. This is additional information for initializing the field, such as a custom `Comparator` used by a `Set` or a `TimeZone` used by a `Calendar`.

### setInitializer

    public void setInitializer(Object initializer)

  The initializer used by the field, or null if none. This is additional information for initializing the field, such as a custom `Comparator` used by a `Set` or a `TimeZone` used by a `Calendar`.

### isTransient

    public boolean isTransient()

  Return whether this is a transient field.

### setTransient

    public void setTransient(boolean trans)

  Return whether this is a transient field.

### getIndex

    public int getIndex()

  The absolute index of this persistent/transactional field.

### setIndex

    public void setIndex(int index)

  The absolute index of this persistent/transactional field.

### getDeclaredIndex

    public int getDeclaredIndex()

  The relative index of this persistent/transactional field.

### setDeclaredIndex

    public void setDeclaredIndex(int index)

  The relative index of this persistent/transactional field.

### getListingIndex

    public int getListingIndex()

  The index in which this field was listed in the metadata. Defaults to `-1` if this field was not listed in the metadata.

### setListingIndex

    public void setListingIndex(int index)

  The index in which this field was listed in the metadata. Defaults to `-1` if this field was not listed in the metadata.

### getPrimaryKeyIndex

    public int getPrimaryKeyIndex()

  The absolute primary key index for this field, or -1 if not a primary key. The first primary key field has index 0, the second index 1, etc.

### setPrimaryKeyIndex

    public void setPrimaryKeyIndex(int index)

  The absolute primary key index for this field, or -1 if not a primary key. The first primary key field has index 0, the second index 1, etc.

### getManagement

    public int getManagement()

  Return the management level for the field. Will be one of:
  - `MANAGE_PERSISTENT`: the field is persistent
  - `MANAGE_TRANSACTIONAL`: the field is transactional but not persistent
  - `MANAGE_NONE`: the field is not managed
  Defaults to `MANAGE_PERSISTENT`.

### setManagement

    public void setManagement(int manage)

  Return the management level for the field. Will be one of:
  - `MANAGE_PERSISTENT`: the field is persistent
  - `MANAGE_TRANSACTIONAL`: the field is transactional but not persistent
  - `MANAGE_NONE`: the field is not managed
  Defaults to `MANAGE_PERSISTENT`.

### isPrimaryKey

    public boolean isPrimaryKey()

  Whether this is a primary key field.

### setPrimaryKey

    public void setPrimaryKey(boolean primKey)

  Whether this is a primary key field.

### getObjectIdFieldTypeCode

    public int getObjectIdFieldTypeCode()

  For a primary key field, return the type of the corresponding object id class field.

### getObjectIdFieldType

    public Class<?> getObjectIdFieldType()

  For a primary key field, return the type of the corresponding object id class field.

### isVersion

    public boolean isVersion()

  Whether this field holds optimistic version information.

### setVersion

    public void setVersion(boolean version)

  Whether this field holds optimistic version information.

### isInDefaultFetchGroup

    public boolean isInDefaultFetchGroup()

  Whether this field is in the default fetch group.

### setInDefaultFetchGroup

    public void setInDefaultFetchGroup(boolean dfg)

  Whether this field is in the default fetch group.

### isDefaultFetchGroupExplicit

    public boolean isDefaultFetchGroupExplicit()

  Whether the default fetch group setting is explicit.

### setDefaultFetchGroupExplicit

    public void setDefaultFetchGroupExplicit(boolean explicit)

  Whether the default fetch group setting is explicit. Allow setting for testing.

### getCustomFetchGroups

    public String[] getCustomFetchGroups()

  Gets the name of the custom fetch groups those are associated to this receiver. This does not include the "default" and "all" fetch groups.

  Returns:
    the set of fetch group names, not including the default and all fetch groups.

### getLoadFetchGroup

    public String getLoadFetchGroup()

  The fetch group that is to be loaded when this receiver is loaded, or null if none set.

### setLoadFetchGroup

    public void setLoadFetchGroup(String lfg)

  The fetch group that is to be loaded when this receiver is loaded, or null if none set.

### isInFetchGroup

    public boolean isInFetchGroup(String fg)

  Whether this field is in the given fetch group.

### setInFetchGroup

    public void setInFetchGroup(String fg,
                                boolean in)

  Set whether this field is in the given fetch group.

  Parameters:
    `fg` - is the name of a fetch group that must be present in the class that declared this field or any of its persistent superclasses.

### getNullValue

    public int getNullValue()

  How the data store should treat null values for this field:
  - `NULL_UNSET`: no value supplied
  - `NULL_NONE`: leave null values as null in the data store
  - `NULL_EXCEPTION`: throw an exception if this field is null at commit
  - `NULL_DEFAULT`: use the database default if this field is null at commit
  Defaults to `NULL_UNSET`.

### setNullValue

    public void setNullValue(int nullValue)

  How the data store should treat null values for this field:
  - `NULL_UNSET`: no value supplied
  - `NULL_NONE`: leave null values as null in the data store
  - `NULL_EXCEPTION`: throw an exception if this field is null at commit
  - `NULL_DEFAULT`: use the database default if this field is null at commit
  Defaults to `NULL_UNSET`.

### isExplicit

    public boolean isExplicit()

  Whether this field is explicitly declared in the metadata.

### setExplicit

    public void setExplicit(boolean explicit)

  Whether this field is explicitly declared in the metadata.

### getMappedBy

    public String getMappedBy()

  The field that this field shares a mapping with.

### setMappedBy

    public void setMappedBy(String mapped)

  The field that this field shares a mapping with.

### getMappedByMetaData

    public FieldMetaData getMappedByMetaData()

  The field that this field shares a mapping with.

### getMappedByField

    public FieldMetaData getMappedByField(ClassMetaData meta,
                                          String mappedBy)

### getInverse

    public String getInverse()

  Logical inverse field.

### setInverse

    public void setInverse(String inverse)

  Logical inverse field.

### getInverseMetaDatas

    public FieldMetaData[] getInverseMetaDatas()

  Return all inverses of this field.

### getValueStrategy

    public int getValueStrategy()

  The strategy to use for insert value generation. One of the constants from `ValueStrategies`.

### setValueStrategy

    public void setValueStrategy(int strategy)

  The strategy to use for insert value generation. One of the constants from `ValueStrategies`.

### getValueSequenceName

    public String getValueSequenceName()

  The value sequence name, or null for none.

### setValueSequenceName

    public void setValueSequenceName(String seqName)

  The value sequence name, or null for none.

### getValueSequenceMetaData

    public SequenceMetaData getValueSequenceMetaData()

  Metadata for the value sequence.

### getUpdateStrategy

    public int getUpdateStrategy()

  The strategy to use when updating the field.

### setUpdateStrategy

    public void setUpdateStrategy(int strategy)

  Set the update strategy.

### isLRS

    public boolean isLRS()

  Whether this field is backed by a large result set.

### setLRS

    public void setLRS(boolean lrs)

  Whether this field is backed by a large result set.

### isStream

    public boolean isStream()

  Whether this field is backed by a stream.

  Since:
    1.1.0

### setStream

    public void setStream(boolean stream)

  Whether this field is backed by a stream.

  Since:
    1.1.0

### usesIntermediate

    public boolean usesIntermediate()

  Whether this field uses intermediate data when loading/storing information through a `OpenJPAStateManager`. Defaults to true.

  See Also:
    `OpenJPAStateManager.setIntermediate(int,Object)`

### setUsesIntermediate

    public void setUsesIntermediate(boolean intermediate)

  Whether this field uses intermediate data when loading/storing information through a `OpenJPAStateManager`. Defaults to true.

  See Also:
    `OpenJPAStateManager.setIntermediate(int,Object)`

### usesImplData

    public Boolean usesImplData()

  Whether this field uses impl data in conjunction with standard field data when acting on a `OpenJPAStateManager`. Defaults to `Boolean.TRUE` (non-cachable impl data).

  Returns:
    `Boolean.FALSE` if this field does not use impl data, `Boolean.TRUE` if this field uses non-cachable impl data, or `null` if this field uses impl data that should be cached across instances
  See Also:
    `OpenJPAStateManager.setImplData(int,Object)`

### setUsesImplData

    public void setUsesImplData(Boolean implData)

  Whether this field uses impl data in conjunction with standard field data when acting on a `OpenJPAStateManager`.

  See Also:
    `OpenJPAStateManager.setImplData(int,Object)`, `usesImplData()`

### getOrders

    public Order[] getOrders()

  The orderings for this field to be applied on load, or empty array.

### setOrders

    public void setOrders(Order[] orders)

  The orderings for this field to be applied on load.

### getOrderDeclaration

    public String getOrderDeclaration()

  String declaring the orderings for this field to be applied on load, or null. The string is of the form:
  `orderable[ asc|desc][, ...]`
  The orderable `#element` is used to denote the value of the field's elements.

### setOrderDeclaration

    public void setOrderDeclaration(String dec)

  String declaring the orderings for this field to be applied on load, or null. The string is of the form:
  `orderable[ asc|desc][, ...]`
  The orderable `#element` is used to denote the value of the field's elements.

### order

    public Object order(Object val)

  Order this field value when it is loaded.

### isExternalized

    public boolean isExternalized()

  Whether the field is externalized.

### getExternalValue

    public Object getExternalValue(Object val,
                                   StoreContext ctx)

  Convert the given field value to its external value through the provided externalizer, or return the value as-is if no externalizer.

### getFieldValue

    public Object getFieldValue(Object val,
                                StoreContext ctx)

  Return the result of passing the given external value through the factory to get the field value. If no factory is present, the given value is returned as-is.

### getExternalizer

    public String getExternalizer()

  The name of this field's externalizer, or null if none.

### setExternalizer

    public void setExternalizer(String externalizer)

  The name of this field's externalizer, or null if none.

### getFactory

    public String getFactory()

  The name of this field's factory, or null if none.

### setFactory

    public void setFactory(String factory)

  The name of this field's factory, or null if none.

### getExternalValues

    public String getExternalValues()

  Properties string mapping field values to external values.

### setExternalValues

    public void setExternalValues(String values)

  Properties string mapping field values to external values.

### getExternalValueMap

    public Map getExternalValueMap()

  Return the mapping of field values to external values.

### getFieldValueMap

    public Map getFieldValueMap()

  Return the mapping of external values to field values.

### getExternalizerMethod

    public Method getExternalizerMethod()

  The externalizer method.

### getFactoryMethod

    public Member getFactoryMethod()

  The factory method or constructor.

### equals

    public boolean equals(Object other)

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### compareTo

    public int compareTo(Object other)

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### getResolve

    public int getResolve()

  Resolve mode for this field.

  Specified by:
    `getResolve` in interface `ValueMetaData`

### setResolve

    public void setResolve(int mode)

  Resolve mode for this field.

  Specified by:
    `setResolve` in interface `ValueMetaData`

### setResolve

    public void setResolve(int mode,
                           boolean on)

  Resolve mode for this field.

  Specified by:
    `setResolve` in interface `ValueMetaData`

### resolve

    public boolean resolve(int mode)

  Resolve and validate metadata. Return true if already resolved.

  Specified by:
    `resolve` in interface `ValueMetaData`

### copy

    public void copy(FieldMetaData field)

  Copy state from the given field to this one. Do not copy mapping information.

### addExtensionKeys

    protected void addExtensionKeys(Collection exts)

  Description copied from class: `Extensions`
  Add all the known extension keys to the specified collection; any implementation that utilized new extensions should override this method to include both the known extensions of its superclass as well as its own extension keys.

  Overrides:
    `addExtensionKeys` in class `Extensions`

### getComments

    public String[] getComments()

  Description copied from interface: `Commentable`
  Return comments, or empty array if none.

  Specified by:
    `getComments` in interface `Commentable`

### setComments

    public void setComments(String[] comments)

  Description copied from interface: `Commentable`
  Set comments.

  Specified by:
    `setComments` in interface `Commentable`

### getFieldMetaData

    public FieldMetaData getFieldMetaData()

  Description copied from interface: `ValueMetaData`
  Return the owning field for this value.

  Specified by:
    `getFieldMetaData` in interface `ValueMetaData`

### getType

    public Class getType()

  Description copied from interface: `ValueMetaData`
  The value class.

  Specified by:
    `getType` in interface `ValueMetaData`

### setType

    public void setType(Class type)

  Description copied from interface: `ValueMetaData`
  The value class.

  Specified by:
    `setType` in interface `ValueMetaData`

### getTypeCode

    public int getTypeCode()

  Description copied from interface: `ValueMetaData`
  The type code of the value class.

  Specified by:
    `getTypeCode` in interface `ValueMetaData`

### setTypeCode

    public void setTypeCode(int code)

  Description copied from interface: `ValueMetaData`
  The type code of the value class.

  Specified by:
    `setTypeCode` in interface `ValueMetaData`

### isTypePC

    public boolean isTypePC()

  Description copied from interface: `ValueMetaData`
  Whether the type is a persistence capable instance.

  Specified by:
    `isTypePC` in interface `ValueMetaData`

### getTypeMetaData

    public ClassMetaData getTypeMetaData()

  Description copied from interface: `ValueMetaData`
  The metadata for the value class, if the type is persistent.

  Specified by:
    `getTypeMetaData` in interface `ValueMetaData`

### getDeclaredType

    public Class getDeclaredType()

  Description copied from interface: `ValueMetaData`
  Return the declared class of the value. This can differ from the return value of `ValueMetaData.getType()` if the user indicates a different type or the value has an externalizer.

  Specified by:
    `getDeclaredType` in interface `ValueMetaData`

### setDeclaredType

    public void setDeclaredType(Class type)

  Description copied from interface: `ValueMetaData`
  Set the declared class of the value.

  Specified by:
    `setDeclaredType` in interface `ValueMetaData`

### getDeclaredTypeCode

    public int getDeclaredTypeCode()

  Description copied from interface: `ValueMetaData`
  Return the declared type code of the value. This can differ from the return value of `ValueMetaData.getTypeCode()` if the user indicates a different type or the value has an externalizer.

  Specified by:
    `getDeclaredTypeCode` in interface `ValueMetaData`

### setDeclaredTypeCode

    public void setDeclaredTypeCode(int type)

  Description copied from interface: `ValueMetaData`
  Set the type code for the value. The type code is usually computed automatically, but it can be useful to set it explicitly when creating metadatas from scratch.

  Specified by:
    `setDeclaredTypeCode` in interface `ValueMetaData`

### isDeclaredTypePC

    public boolean isDeclaredTypePC()

  Description copied from interface: `ValueMetaData`
  Whether the type is a persistence capable instance.

  Specified by:
    `isDeclaredTypePC` in interface `ValueMetaData`

### getDeclaredTypeMetaData

    public ClassMetaData getDeclaredTypeMetaData()

  Description copied from interface: `ValueMetaData`
  Return metadata for the value's class, if the type is persistent.

  Specified by:
    `getDeclaredTypeMetaData` in interface `ValueMetaData`

### isEmbedded

    public boolean isEmbedded()

  Description copied from interface: `ValueMetaData`
  This attribute is a hint to the implementation to store this value in the same structure as the class, rather than as a separate datastore structure. Defaults to true if the field is not a collection or map or persistence-capable object; defaults to false otherwise. Implementations are permitted to ignore this attribute.

  Specified by:
    `isEmbedded` in interface `ValueMetaData`

### setEmbedded

    public void setEmbedded(boolean embedded)

  Description copied from interface: `ValueMetaData`
  This attribute is a hint to the implementation to store this value in the same structure as the class, rather than as a separate datastore structure. Defaults to true if the field is not a collection or map or persistence-capable objects; defaults to false otherwise. Implementations are permitted to ignore this attribute.

  Specified by:
    `setEmbedded` in interface `ValueMetaData`

### isEmbeddedPC

    public boolean isEmbeddedPC()

  Description copied from interface: `ValueMetaData`
  Whether this is an embedded persistence capable value.

  Specified by:
    `isEmbeddedPC` in interface `ValueMetaData`

### getEmbeddedMetaData

    public ClassMetaData getEmbeddedMetaData()

  Description copied from interface: `ValueMetaData`
  The embedded class metadata for the value.

  Specified by:
    `getEmbeddedMetaData` in interface `ValueMetaData`

### addEmbeddedMetaData

    public ClassMetaData addEmbeddedMetaData(int access)

  Description copied from interface: `ValueMetaData`
  Add embedded metadata for this value with the given access type

  Specified by:
    `addEmbeddedMetaData` in interface `ValueMetaData`

### addEmbeddedMetaData

    public ClassMetaData addEmbeddedMetaData()

  Description copied from interface: `ValueMetaData`
  Add embedded metadata for this value.

  Specified by:
    `addEmbeddedMetaData` in interface `ValueMetaData`

### getCascadeDelete

    public int getCascadeDelete()

  Description copied from interface: `ValueMetaData`
  Cascade behavior for delete operation. Only applies to persistence-capable values. Options are:
  - `CASCADE_NONE`: No cascades.
  - `CASCADE_IMMEDIATE`: Value is deleted immediately when the owning object is deleted.
  - `CASCADE_AUTO`: Value will be deleted on flush if the owning object is deleted or if the value is removed from the owning object, and if the value is not assigned to another relation in the same transaction.

  Specified by:
    `getCascadeDelete` in interface `ValueMetaData`

### setCascadeDelete

    public void setCascadeDelete(int delete)

  Description copied from interface: `ValueMetaData`
  Cascade behavior for deletion.

  Specified by:
    `setCascadeDelete` in interface `ValueMetaData`
  See Also:
    `ValueMetaData.getCascadeDelete()`

### getCascadePersist

    public int getCascadePersist()

  Description copied from interface: `ValueMetaData`
  Cascade behavior for persist operation. Only applies to persistence-capable values. Options are:
  - `CASCADE_NONE`: No cascades. If a transient relation is held at flush, an error is thrown.
  - `CASCADE_IMMEDIATE`: Value is persisted immediately when the owning object is persisted.
  - `CASCADE_AUTO`: Value will be persisted on flush.

  Specified by:
    `getCascadePersist` in interface `ValueMetaData`

### setCascadePersist

    public void setCascadePersist(int persist)

  Description copied from interface: `ValueMetaData`
  Cascade behavior for persist operation.

  Specified by:
    `setCascadePersist` in interface `ValueMetaData`
  See Also:
    `ValueMetaData.getCascadePersist()`

### getCascadeAttach

    public int getCascadeAttach()

  Description copied from interface: `ValueMetaData`
  Cascade behavior for attach operation. Only applies to persistence-capable values. Options are:
  - `CASCADE_NONE`: No cascades of attach. Relation remains detached.
  - `CASCADE_IMMEDIATE`: Value is attached immediately.

  Specified by:
    `getCascadeAttach` in interface `ValueMetaData`

### setCascadeAttach

    public void setCascadeAttach(int attach)

  Description copied from interface: `ValueMetaData`
  Cascade behavior for attach operation.

  Specified by:
    `setCascadeAttach` in interface `ValueMetaData`
  See Also:
    `ValueMetaData.getCascadeAttach()`

### getCascadeDetach

    public int getCascadeDetach()

  Description copied from interface: `ValueMetaData`
  Cascade behavior for detach operation. Only applies to persistence-capable values. Options are:
  - `CASCADE_NONE`: No cascades of detach. Relation remains attached.
  - `CASCADE_IMMEDIATE`: Value is detached immediately.

  Specified by:
    `getCascadeDetach` in interface `ValueMetaData`

### setCascadeDetach

    public void setCascadeDetach(int detach)

  Description copied from interface: `ValueMetaData`
  Cascade behavior for detach operation.

  Specified by:
    `setCascadeDetach` in interface `ValueMetaData`
  See Also:
    `ValueMetaData.getCascadeDetach()`

### getCascadeRefresh

    public int getCascadeRefresh()

  Description copied from interface: `ValueMetaData`
  Cascade behavior for refresh operation. Only applies to persistence-capable values. Options are:
  - `CASCADE_NONE`: No cascades of refresh.
  - `CASCADE_IMMEDIATE`: Persistent value object is also refreshed.
  - `CASCADE_AUTO`: Value will be refreshed if it is in the current fetch groups.

  Specified by:
    `getCascadeRefresh` in interface `ValueMetaData`

### setCascadeRefresh

    public void setCascadeRefresh(int refresh)

  Description copied from interface: `ValueMetaData`
  Cascade behavior for refresh operation.

  Specified by:
    `setCascadeRefresh` in interface `ValueMetaData`
  See Also:
    `ValueMetaData.getCascadeRefresh()`

### isSerialized

    public boolean isSerialized()

  Description copied from interface: `ValueMetaData`
  Whether this value is serialized when stored.

  Specified by:
    `isSerialized` in interface `ValueMetaData`

### setSerialized

    public void setSerialized(boolean serialized)

  Description copied from interface: `ValueMetaData`
  Whether this value is serialized when stored.

  Specified by:
    `setSerialized` in interface `ValueMetaData`

### getValueMappedBy

    public String getValueMappedBy()

  Description copied from interface: `ValueMetaData`
  The field that this value shares a mapping with. Currently the only supported use for a mapped-by value is when a map field key is determined by a field of the persistence-capable map value.

  Specified by:
    `getValueMappedBy` in interface `ValueMetaData`

### setValueMappedBy

    public void setValueMappedBy(String mapped)

  Description copied from interface: `ValueMetaData`
  The field that this value shares a mapping with. Currently the only supported use for a mapped-by value is when a map field key is determined by a field of the persistence-capable map value.

  Specified by:
    `setValueMappedBy` in interface `ValueMetaData`

### getValueMappedByMetaData

    public FieldMetaData getValueMappedByMetaData()

  Description copied from interface: `ValueMetaData`
  The field that this value shares a mapping with. Currently the only supported use for a mapped-by value is when a map field key is determined by a field of the persistence-capable map value.

  Specified by:
    `getValueMappedByMetaData` in interface `ValueMetaData`

### getTypeOverride

    public Class<?> getTypeOverride()

  Description copied from interface: `ValueMetaData`
  User-supplied type overriding assumed type based on field.

  Specified by:
    `getTypeOverride` in interface `ValueMetaData`

### setTypeOverride

    public void setTypeOverride(Class type)

  Description copied from interface: `ValueMetaData`
  User-supplied type overriding assumed type based on field.

  Specified by:
    `setTypeOverride` in interface `ValueMetaData`

### copy

    public void copy(ValueMetaData vmd)

  Description copied from interface: `ValueMetaData`
  Copy state from the given value to this one. Do not copy mapping information.

  Specified by:
    `copy` in interface `ValueMetaData`

### isUsedInOrderBy

    public boolean isUsedInOrderBy()

  Check if this field is used by other field as "order by" value.

  Since:
    1.1.0

### setUsedInOrderBy

    public void setUsedInOrderBy(boolean isUsed)

  Whether this field is used by other field as "order by" value .

  Since:
    1.1.0

### isValueGenerated

    public boolean isValueGenerated()

### setValueGenerated

    public void setValueGenerated(boolean generated)

### isElementCollection

    public boolean isElementCollection()

### setElementCollection

    public void setElementCollection(boolean isElementCollection)

### getMappedByIdValue

    public String getMappedByIdValue()

### setMappedByIdValue

    public void setMappedByIdValue(String mappedByIdValue)

### isMappedById

    public boolean isMappedById()

### getAccessType

    public int getAccessType()

  Gets the access type used by this field. If no access type is set for this field then return the access type used by the declaring class.

### setAccessType

    public void setAccessType(int fCode)

  Sets access type of this field. The access code is verified for validity as well as against the access style used by the declaring class.

### getAssociationType

    public int getAssociationType()

### setAssociationType

    public void setAssociationType(int type)

### isPersistentCollection

    public boolean isPersistentCollection()

### setPersistentCollection

    public void setPersistentCollection(boolean persistentCollection)

### getRelationType

    public Class<?> getRelationType()

### isDelayCapable

    public boolean isDelayCapable()

### setDelayCapable

    public void setDelayCapable(Boolean delayCapable)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 Apache Software Foundation. All Rights Reserved.