Prev Package | Next Package | Frames | No Frames |
Interface Summary | |
DepositBox | DepositBox is an interface for ClassMolder to access the dirty
checking cache of an object. |
Lazy | Lazy is a place holder interface to indicate that a data object or a Collection in a data object is an Lazy instance. |
TxSynchronizable | This interface offers some callback hooks for several different stages during a transaction. |
XAResourceSource | A data source that wishes to particiate as an XA resource implements this interface. |
Class Summary | |
ClassMolder | ClassMolder is a 'binder' for one type of data object and its corresponding
Persistence . |
ClassMolderHelper | |
DatingService | DataService is a helper class for constructing ClassMolders and pairing up ClassMolders which depends and extends the other. |
FieldMolder | FieldMolder represents a field of a data object class. |
FieldMolder.CollectionInfo | |
KeyGeneratorFactoryRegistry | Registry for KeyGeneratorFactory implementations
obtained from the Castor properties file and used by the
JDO mapping configuration file. |
LockEngine | LockEngine is a gateway for all the ClassMolders of a persistence storage. |
ObjectDeletedWaitingForLockException | Thrown to indicate that a lock attempt has failed due to object being deleted by a concurrent transaction. |
ObjectLock | Read/write locks and lock synchronization on an object. |
ObjectLock.LinkedTx | Object uses to hold a linked list of transactions holding write locks or waiting for a read/write lock. |
OID | Object identifier. |
OutputLogInterceptor | A simple log interceptor that reports all messages to a writer or an output stream. |
PersistenceEngineFactory | Factory for constructing new persistence engines. |
PersistenceFactoryRegistry | Registry for PersistenceFactory implementations
obtained from the Castor properties file and used by the
JDO database configuration file. |
PersistenceInfoGroup | Redistribution and use of this software and associated documentation ("Software"), with or without modification, are permitted provided that the following conditions are met: 1. |
QueryResults | The result of a query in the context of a transaction. |
SQLRelationLoader | SQLRelationLoader is a quick hack for creating and removing relation from a many-to-many relation database from ClassMolder. |
XAResourceImpl | An XAResource implementation for an XAResourceSource . |
TransactionContext
in order
to perform operations. All operations against the persistence engine are transactional.
The persistence engine is obtained through the PersistenceEngineFactory
class which returns a LockEngine
. The factory requires
a factory of persistence SPIs (see SPI.
LockEngine
implements a persistence engine that caches
objects in memory for performance, and eliminates the number of persistent storage operations.
In order to speed up interaction between the engines and the object, ClassMolder
is constructed to represent a flat view
of the object graph that is efficient to process.
If the application API supports enlistment as an XA resource, it will use
XAResourceImpl
and implement XAResourceSource
for automatic enlistment/delistment with a
transaction context.
The remainder of this package are persistence exceptions and the concurrency engine
implementation.