|
spring-orm | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.orm.jdo.support.SpringPersistenceManagerProxyBean
public class SpringPersistenceManagerProxyBean
Proxy that implements the PersistenceManager interface,
delegating to the current thread-bound PersistenceManager (the Spring-managed
transactional PersistenceManager or the single OpenPersistenceManagerInView
PersistenceManager, if any) on each invocation. This class makes such a
Spring-style PersistenceManager proxy available for bean references.
The main advantage of this proxy is that it allows DAOs to work with a
plain JDO PersistenceManager reference in JDO 2.1 style
(see PersistenceManagerFactory.getPersistenceManagerProxy()),
while still participating in Spring's resource and transaction management.
The behavior of this proxy matches the behavior that the JDO 2.1 spec
defines for a PersistenceManager proxy. Hence, DAOs could seamlessly switch
between StandardPersistenceManagerProxyBean and this Spring-style proxy,
receiving the reference through Dependency Injection. This will work without
any Spring API dependencies in the DAO code!
Note: In contrast to StandardPersistenceManagerProxyBean, this proxy
works with JDO 2.0 and higher. It does not require JDO 2.1.
StandardPersistenceManagerProxyBean,
PersistenceManagerFactory.getPersistenceManagerProxy(),
PersistenceManagerFactoryUtils.getPersistenceManager(javax.jdo.PersistenceManagerFactory, boolean),
PersistenceManagerFactoryUtils.releasePersistenceManager(javax.jdo.PersistenceManager, javax.jdo.PersistenceManagerFactory)| Constructor Summary | |
|---|---|
SpringPersistenceManagerProxyBean()
|
|
| Method Summary | |
|---|---|
void |
afterPropertiesSet()
|
protected JdoDialect |
getJdoDialect()
Return the JDO dialect to use for this proxy. |
javax.jdo.PersistenceManager |
getObject()
|
java.lang.Class<? extends javax.jdo.PersistenceManager> |
getObjectType()
|
protected javax.jdo.PersistenceManagerFactory |
getPersistenceManagerFactory()
Return the target PersistenceManagerFactory for this proxy. |
protected java.lang.Class<? extends javax.jdo.PersistenceManager> |
getPersistenceManagerInterface()
Return the PersistenceManager interface to expose. |
protected boolean |
isAllowCreate()
Return whether the PersistenceManagerFactory proxy is allowed to create a non-transactional PersistenceManager when no transactional PersistenceManager can be found for the current thread. |
boolean |
isSingleton()
|
void |
setAllowCreate(boolean allowCreate)
Set whether the PersistenceManagerFactory proxy is allowed to create a non-transactional PersistenceManager when no transactional PersistenceManager can be found for the current thread. |
void |
setJdoDialect(JdoDialect jdoDialect)
Set the JDO dialect to use for this proxy. |
void |
setPersistenceManagerFactory(javax.jdo.PersistenceManagerFactory persistenceManagerFactory)
Set the target PersistenceManagerFactory for this proxy. |
void |
setPersistenceManagerInterface(java.lang.Class<? extends javax.jdo.PersistenceManager> persistenceManagerInterface)
Specify the PersistenceManager interface to expose, possibly including vendor extensions. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SpringPersistenceManagerProxyBean()
| Method Detail |
|---|
public void setPersistenceManagerFactory(javax.jdo.PersistenceManagerFactory persistenceManagerFactory)
protected javax.jdo.PersistenceManagerFactory getPersistenceManagerFactory()
public void setJdoDialect(JdoDialect jdoDialect)
Default is a DefaultJdoDialect based on the PersistenceManagerFactory's underlying DataSource, if any.
protected JdoDialect getJdoDialect()
public void setPersistenceManagerInterface(java.lang.Class<? extends javax.jdo.PersistenceManager> persistenceManagerInterface)
Default is the standard javax.jdo.PersistenceManager interface.
protected java.lang.Class<? extends javax.jdo.PersistenceManager> getPersistenceManagerInterface()
public void setAllowCreate(boolean allowCreate)
Default is "true". Can be turned off to enforce access to
transactional PersistenceManagers, which safely allows for DAOs
written to get a PersistenceManager without explicit closing
(i.e. a PersistenceManagerFactory.getPersistenceManager()
call without corresponding PersistenceManager.close() call).
PersistenceManagerFactoryUtils.getPersistenceManager(javax.jdo.PersistenceManagerFactory, boolean)protected boolean isAllowCreate()
public void afterPropertiesSet()
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBeanpublic javax.jdo.PersistenceManager getObject()
getObject in interface org.springframework.beans.factory.FactoryBean<javax.jdo.PersistenceManager>public java.lang.Class<? extends javax.jdo.PersistenceManager> getObjectType()
getObjectType in interface org.springframework.beans.factory.FactoryBean<javax.jdo.PersistenceManager>public boolean isSingleton()
isSingleton in interface org.springframework.beans.factory.FactoryBean<javax.jdo.PersistenceManager>
|
spring-orm | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||