Class ApplicationIds

java.lang.Object
org.apache.openjpa.util.ApplicationIds

public class ApplicationIds extends Object
Utility class for manipulating application object ids.
Author:
Abe White
  • Constructor Details

    • ApplicationIds

      public ApplicationIds()
  • Method Details

    • toPKValues

      public static Object[] toPKValues(Object oid, ClassMetaData meta)
      Return the primary key values for the given object id. The values will be returned in the same order as the metadata primary key fields. Values for PC primary key fields will be the primary key value or oid value of the related instance (depending on FieldMetaData#isObjectIdFieldIdOfPC).
    • wrap

      public static Object wrap(ClassMetaData meta, Object oid)
      Wraps the given object for the given type into a OpenJPA specific application identity object wrapper instance (i.e. ObjectId) if all of the following is true: the given type is not using built-in OpenJPA identity types the given type is using a shared OpenJPA identity type the given object is not already a wrapper identity type
    • fromPKValues

      public static Object fromPKValues(Object[] pks, ClassMetaData meta)
      Return a new object id constructed from the given primary key values. Values for PC primary key fields should be the primary key value or oid value of the related instance (depending on FieldMetaData#isObjectIdFieldIdOfPC).
    • copy

      public static Object copy(Object oid, ClassMetaData meta)
      Copy the given oid value.
    • get

      public static Object get(Object oid, FieldMetaData fmd)
      Return the given primary key field value from the given oid.
    • create

      public static Object create(PersistenceCapable pc, ClassMetaData meta)
      Generate an application id based on the current primary key field state of the given instance.
    • assign

      public static boolean assign(OpenJPAStateManager sm, StoreManager store, boolean preFlush)
      Assign an application identity object to the given state, or return false if determining the application identity requires a flush.
    • isIdSet

      public static boolean isIdSet(Object id, ClassMetaData meta, String mappedByIdFieldName)
      Check if object id is set or not.
    • getKey

      public static Object getKey(Object id, ClassMetaData meta)
      Return the key from the given id.
    • setAppId

      public static void setAppId(ObjectId id, Object newId)
      Sets the underlying id of an ObjectId. Should only be used with simple (idclass) types.