| java.lang.Object | |
| ↳ | org.springframework.orm.jdo.PersistenceManagerFactoryUtils |
Helper class featuring methods for JDO PersistenceManager handling, allowing for reuse of PersistenceManager instances within transactions. Also provides support for exception translation.
Used internally by JdoTemplate, JdoInterceptor and
JdoTransactionManager. Can also be used directly in application code.
| Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| int | PERSISTENCE_MANAGER_SYNCHRONIZATION_ORDER | Order value for TransactionSynchronization objects that clean up JDO PersistenceManagers. | |||||||||
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Apply the current transaction timeout, if any, to the given JDO Query object.
| |||||||||||
Convert the given JDOException to an appropriate exception from the
org.springframework.dao hierarchy. | |||||||||||
Obtain a JDO PersistenceManager via the given factory.
| |||||||||||
Actually release a PersistenceManager for the given factory.
| |||||||||||
Obtain a JDO PersistenceManager via the given factory.
| |||||||||||
Return whether the given JDO PersistenceManager is transactional, that is,
bound to the current thread by Spring's transaction facilities.
| |||||||||||
Close the given PersistenceManager, created via the given factory,
if it is not managed externally (i.e.
| |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
Order value for TransactionSynchronization objects that clean up JDO PersistenceManagers. Return DataSourceUtils.CONNECTION_SYNCHRONIZATION_ORDER - 100 to execute PersistenceManager cleanup before JDBC Connection cleanup, if any.
Apply the current transaction timeout, if any, to the given JDO Query object.
| query | the JDO Query object |
|---|---|
| pmf | JDO PersistenceManagerFactory that the Query was created for |
| jdoDialect | the JdoDialect to use for applying a query timeout
(must not be null) |
| if thrown by JDO methods | |
| JDOException |
Convert the given JDOException to an appropriate exception from the
org.springframework.dao hierarchy.
The most important cases like object not found or optimistic locking failure are covered here. For more fine-granular conversion, JdoAccessor and JdoTransactionManager support sophisticated translation of exceptions via a JdoDialect.
| ex | JDOException that occured |
|---|
Obtain a JDO PersistenceManager via the given factory. Is aware of a
corresponding PersistenceManager bound to the current thread,
for example when using JdoTransactionManager. Will create a new
PersistenceManager else, if "allowCreate" is true.
Same as getPersistenceManager, but throwing the original JDOException.
| pmf | PersistenceManagerFactory to create the PersistenceManager with |
|---|---|
| allowCreate | if a non-transactional PersistenceManager should be created when no transactional PersistenceManager can be found for the current thread |
| if the PersistenceManager couldn't be created | |
| IllegalStateException | if no thread-bound PersistenceManager found and
"allowCreate" is false |
| JDOException |
JdoTransactionManagerActually release a PersistenceManager for the given factory.
Same as releasePersistenceManager, but throwing the original JDOException.
| pm | PersistenceManager to close |
|---|---|
| pmf | PersistenceManagerFactory that the PersistenceManager was created with
(can be null) |
| if thrown by JDO methods | |
| JDOException |
Obtain a JDO PersistenceManager via the given factory. Is aware of a
corresponding PersistenceManager bound to the current thread,
for example when using JdoTransactionManager. Will create a new
PersistenceManager else, if "allowCreate" is true.
| pmf | PersistenceManagerFactory to create the PersistenceManager with |
|---|---|
| allowCreate | if a non-transactional PersistenceManager should be created when no transactional PersistenceManager can be found for the current thread |
| DataAccessResourceFailureException | if the PersistenceManager couldn't be obtained |
|---|---|
| IllegalStateException | if no thread-bound PersistenceManager found and
"allowCreate" is false |
Return whether the given JDO PersistenceManager is transactional, that is, bound to the current thread by Spring's transaction facilities.
| pm | the JDO PersistenceManager to check |
|---|---|
| pmf | JDO PersistenceManagerFactory that the PersistenceManager
was created with (can be null) |
Close the given PersistenceManager, created via the given factory, if it is not managed externally (i.e. not bound to the thread).
| pm | PersistenceManager to close |
|---|---|
| pmf | PersistenceManagerFactory that the PersistenceManager was created with
(can be null)
|