Class DynamicIdentityPolicy

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

    public class DynamicIdentityPolicy
    extends CMP3Policy
    Custom CMPPolicy to handle Object[]. The parent class supports only List and ID class for composite keys.
    Since:
    EclipseLink 1.2
    Author:
    dclarke
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.persistence.descriptors.CMPPolicy

        org.eclipse.persistence.descriptors.CMPPolicy.KeyElementAccessor, org.eclipse.persistence.descriptors.CMPPolicy.KeyIsElementAccessor
    • Field Summary

      • Fields inherited from class org.eclipse.persistence.descriptors.CMPPolicy

        AFTER_EJBCREATE, AFTER_EJBPOSTCREATE, ALL_MODIFICATIONS, descriptor, forceUpdate, mappedClass, modificationDeferralLevel, nonDeferredCreateTime, NONE, pessimisticLockingPolicy, UNDEFINED, UPDATE_MODIFICATIONS, updateAllFields
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object createPrimaryKeyFromId​(java.lang.Object key, org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Use the key to create a EclipseLink primary key.
      protected org.eclipse.persistence.descriptors.CMPPolicy.KeyElementAccessor[] initializePrimaryKeyFields​(java.lang.Class keyClass, org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Cache the bean's primary key fields so speed up creating of primary key objects and initialization of beans.
      • Methods inherited from class org.eclipse.persistence.descriptors.CMPPolicy

        createPrimaryKeyInstance, createPrimaryKeyInstanceFromId, createPrimaryKeyInstanceFromPrimaryKeyValues, getClassInstance, getDeferModificationsUntilCommit, getDescriptor, getForceUpdate, getMappedClass, getNonDeferredCreateTime, getPessimisticLockingPolicy, getUpdateAllFields, hasPessimisticLockingPolicy, internalGetForceUpdate, internalGetUpdateAllFields, internalSetForceUpdate, internalSetUpdateAllFields, isSingleKey, setDeferModificationsUntilCommit, setDescriptor, setFieldValue, setForceUpdate, setMappedClass, setNonDeferredCreateTime, setPessimisticLockingPolicy, setUpdateAllFields
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DynamicIdentityPolicy

        public DynamicIdentityPolicy()
    • Method Detail

      • createPrimaryKeyFromId

        public java.lang.Object createPrimaryKeyFromId​(java.lang.Object key,
                                                       org.eclipse.persistence.internal.sessions.AbstractSession session)
        Description copied from class: CMP3Policy
        INTERNAL: Use the key to create a EclipseLink primary key. If the key is simple (direct mapped) then just add it to a vector, otherwise must go through the inefficient process of copying the key into the bean and extracting the key from the bean.
        Overrides:
        createPrimaryKeyFromId in class CMP3Policy
      • initializePrimaryKeyFields

        protected org.eclipse.persistence.descriptors.CMPPolicy.KeyElementAccessor[] initializePrimaryKeyFields​(java.lang.Class keyClass,
                                                                                                                org.eclipse.persistence.internal.sessions.AbstractSession session)
        Description copied from class: CMP3Policy
        INTERNAL: Cache the bean's primary key fields so speed up creating of primary key objects and initialization of beans. Note, we have to re-look up the fields for the bean class since these fields may have been loaded with the wrong loader (thank you Kirk). If the key is compound, we also have to look up the fields for the key.
        Overrides:
        initializePrimaryKeyFields in class CMP3Policy