public interface StorageAccessIF
Modifier and Type | Method and Description |
---|---|
void |
abort()
INTERNAL: Aborts all changes performed in the transaction.
|
void |
close()
INTERNAL: Closes the storage access, which allows it to free its
resources.
|
void |
commit()
INTERNAL: Commits the changes performed in the transaction.
|
void |
createObject(ObjectAccessIF oaccess,
Object object)
INTERNAL: Called by the transaction when it requests the new
object to be created in the data repository.
|
QueryIF |
createQuery(JDOQuery jdoquery,
ObjectAccessIF oaccess,
AccessRegistrarIF registrar,
boolean lookup_identities)
INTERNAL: Build a QueryIF from the specified JDO query instance.
|
QueryIF |
createQuery(String name,
ObjectAccessIF oaccess,
AccessRegistrarIF registrar)
INTERNAL: Creates a query instance for the given transaction.
|
void |
deleteObject(ObjectAccessIF oaccess,
Object object)
INTERNAL: Called by the transaction when it requests the
object to be deleted in the data repository.
|
void |
flush()
INTERNAL: Called when the transaction requires the transaction
changes to be stored by the storage access (i.e.
|
IdentityIF |
generateIdentity(Class<?> type)
INTERNAL: Called by the application when it requests a new object
identity for a given object type.
|
String |
getId()
INTERNAL: Gets the storage access id.
|
String |
getProperty(String property)
INTERNAL: Gets the value of the specified property.
|
StorageIF |
getStorage()
INTERNAL: Returns the storage definition that the access uses.
|
boolean |
isReadOnly()
INTERNAL: Returns true if the storage access is read-only.
|
Object |
loadField(AccessRegistrarIF registrar,
IdentityIF identity,
int field)
INTERNAL: Requests the loading of the specified field for the
given object identity.
|
Object |
loadFieldMultiple(AccessRegistrarIF registrar,
Collection<IdentityIF> identities,
IdentityIF current,
Class<?> type,
int field)
INTERNAL: Requests the loading of the specified field for all the
given object identities.
|
boolean |
loadObject(AccessRegistrarIF registrar,
IdentityIF identity)
INTERNAL: Check for the existence of the object identity in the
data repository.
|
void |
storeDirty(ObjectAccessIF oaccess,
Object object)
INTERNAL: Stores object fields that are dirty in the database.
|
boolean |
validate()
INTERNAL: Returns true if the storage access is valid.
|
String getId()
StorageIF getStorage()
boolean isReadOnly()
boolean validate()
void commit()
void abort()
void close()
void flush()
This method exists mainly to allow storage access implementations to optimize its communication with data repositories. An example of this is writing transaction changes in batches to improve performance.
Note that the transaction will always call this method at the end of its store method. It will do this so that it is sure that the changes will be visible inside the data repository.
boolean loadObject(AccessRegistrarIF registrar, IdentityIF identity)
Object loadField(AccessRegistrarIF registrar, IdentityIF identity, int field) throws IdentityNotFoundException
IdentityNotFoundException
- if the identity was not found.Object loadFieldMultiple(AccessRegistrarIF registrar, Collection<IdentityIF> identities, IdentityIF current, Class<?> type, int field) throws IdentityNotFoundException
IdentityNotFoundException
- if the identity was not found.void createObject(ObjectAccessIF oaccess, Object object)
void deleteObject(ObjectAccessIF oaccess, Object object)
void storeDirty(ObjectAccessIF oaccess, Object object)
IdentityIF generateIdentity(Class<?> type)
QueryIF createQuery(String name, ObjectAccessIF oaccess, AccessRegistrarIF registrar)
QueryIF createQuery(JDOQuery jdoquery, ObjectAccessIF oaccess, AccessRegistrarIF registrar, boolean lookup_identities)