Class DynamicIdentityPolicy

java.lang.Object
org.eclipse.persistence.descriptors.CMPPolicy
org.eclipse.persistence.internal.jpa.CMP3Policy
org.eclipse.persistence.jpa.dynamic.DynamicIdentityPolicy
All Implemented Interfaces:
Serializable, Cloneable

public class DynamicIdentityPolicy extends org.eclipse.persistence.internal.jpa.CMP3Policy
Custom CMPPolicy to handle Object[]. The parent class supports only List and ID class for composite keys.
See Also:
Author:
dclarke
  • Constructor Details

    • DynamicIdentityPolicy

      public DynamicIdentityPolicy()
      Default constructor;
  • Method Details

    • createPrimaryKeyFromId

      public Object createPrimaryKeyFromId(Object key, org.eclipse.persistence.internal.sessions.AbstractSession session)
      Description copied from class: org.eclipse.persistence.internal.jpa.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 org.eclipse.persistence.internal.jpa.CMP3Policy
    • initializePrimaryKeyFields

      protected CMPPolicy.KeyElementAccessor[] initializePrimaryKeyFields(Class keyClass, org.eclipse.persistence.internal.sessions.AbstractSession session)
      Description copied from class: org.eclipse.persistence.internal.jpa.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 org.eclipse.persistence.internal.jpa.CMP3Policy