Object getObjectId(
Object pc
)
The getObjectId
method returns an ObjectId instance that represents the object identity of the specified JDO instance. The identity is guaranteed to be unique only in the context of the JDO PersistenceManager
that created the identity, and only for two types of JDO Identity: those that are managed by the application, and those that are managed by the data store.
If the object identity is being changed in the transaction, by the application modifying one or more of the application key fields, then this method returns the identity as of the beginning of the transaction. The value returned by getObjectId
will be different following afterCompletion
processing for successful transactions.
Within a transaction, the ObjectId returned will compare equal to the ObjectId returned by only one among all JDO instances associated with the PersistenceManager
regardless of the type of ObjectId.
The ObjectId does not necessarily contain any internal state of the instance, nor is it necessarily an instance of the class used to manage identity internally. Therefore, if the application makes a change to the ObjectId instance returned by this method, there is no effect on the instance from which the ObjectId was obtained.
The getObjectById
method can be used between instances of PersistenceManager
of different JDO vendors only for instances of persistence capable classes using application-managed (primary key) JDO identity. If it is used for instances of classes using datastore identity, the method might succeed, but there are no guarantees that the parameter and return instances are related in any way.
- Parameters:
pc
- thePersistenceCapable
instance
- Return:
- the ObjectId of the instance
- See Also:
getTransactionalObjectId(Object pc)
getObjectById(Object oid,boolean validate)
- Since:
- JDO 1.0