Package org.datanucleus.api.jdo
Class JDOTransaction
- java.lang.Object
-
- org.datanucleus.api.jdo.JDOTransaction
-
- All Implemented Interfaces:
javax.jdo.Transaction
public class JDOTransaction extends Object implements javax.jdo.Transaction
Wrapper for the transaction for use by JDO.
-
-
Constructor Summary
Constructors Constructor Description JDOTransaction(JDOPersistenceManager pm, org.datanucleus.transaction.Transaction tx)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
assertNotCommitting()
Throw an Exception if the underlying transaction is currently committing.protected void
assertNotInUse()
Asserts that the transaction is not in use.void
begin()
Method to start the transaction.void
commit()
Method to commit the transaction.void
deregisterEventListener(org.datanucleus.transaction.TransactionEventListener listener)
Method to deregister a listener for transaction events.String
getIsolationLevel()
Accessor for the current isolation level.boolean
getNontransactionalRead()
Accessor for nontransactionalRead settingboolean
getNontransactionalWrite()
Accessor for nontransactionalWrite settingboolean
getNontransactionalWriteAutoCommit()
Accessor for nontransactionalWrite settingboolean
getOptimistic()
Accessor for optimistic settingJDOPersistenceManager
getPersistenceManager()
Accessor for the JDO PersistenceManagerboolean
getRestoreValues()
Accessor for restoreValues settingboolean
getRetainValues()
Accessor for retainValues settingboolean
getRollbackOnly()
Accessor for whether to allow rollback onlyBoolean
getSerializeRead()
Accessor for whether to serialise any read objects in this transaction.javax.transaction.Synchronization
getSynchronization()
Accessor for the synchronization (if any)boolean
isActive()
Accessor for whether the transaction is activevoid
registerEventListener(org.datanucleus.transaction.TransactionEventListener listener)
Method to register a listener for transaction events.void
releaseSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.void
rollback()
Method to rollback the transactionvoid
rollbackToSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.void
setIsolationLevel(String level)
Mutator for the isolation level.void
setNontransactionalRead(boolean flag)
Mutator for the nontransactionalRead setting.void
setNontransactionalWrite(boolean flag)
Mutator for the nontransactionalWrite setting.void
setNontransactionalWriteAutoCommit(boolean flag)
Mutator for the nontransactionalWrite auto-commit setting.void
setOptimistic(boolean opt)
Mutator for the optimistic settingvoid
setOption(String option, boolean value)
Convenience accessor for setting a transaction option.void
setOption(String option, int value)
Convenience accessor for setting a transaction option.void
setOption(String option, String value)
Convenience accessor for setting a transaction option.void
setRestoreValues(boolean restore)
Mutator for the restore values settingvoid
setRetainValues(boolean retain)
Mutator for the retain values settingvoid
setRollbackOnly()
Mutator for the rollback-only settingvoid
setSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.void
setSerializeRead(Boolean serialize)
Mutator for whether to serialise any read objects.void
setSynchronization(javax.transaction.Synchronization synch)
Mutator for the Synchronisation
-
-
-
Constructor Detail
-
JDOTransaction
public JDOTransaction(JDOPersistenceManager pm, org.datanucleus.transaction.Transaction tx)
Constructor- Parameters:
pm
- The JDO PersistenceManagertx
- The real transaction
-
-
Method Detail
-
getPersistenceManager
public JDOPersistenceManager getPersistenceManager()
Accessor for the JDO PersistenceManager- Specified by:
getPersistenceManager
in interfacejavax.jdo.Transaction
- Returns:
- The JDO PM
-
isActive
public boolean isActive()
Accessor for whether the transaction is active- Specified by:
isActive
in interfacejavax.jdo.Transaction
- Returns:
- Whether it is active
-
begin
public void begin()
Method to start the transaction.- Specified by:
begin
in interfacejavax.jdo.Transaction
-
commit
public void commit()
Method to commit the transaction.- Specified by:
commit
in interfacejavax.jdo.Transaction
-
rollback
public void rollback()
Method to rollback the transaction- Specified by:
rollback
in interfacejavax.jdo.Transaction
-
getNontransactionalRead
public boolean getNontransactionalRead()
Accessor for nontransactionalRead setting- Specified by:
getNontransactionalRead
in interfacejavax.jdo.Transaction
- Returns:
- The setting for nontransactionalRead
-
getNontransactionalWrite
public boolean getNontransactionalWrite()
Accessor for nontransactionalWrite setting- Specified by:
getNontransactionalWrite
in interfacejavax.jdo.Transaction
- Returns:
- The setting for nontransactionalWrite
-
getNontransactionalWriteAutoCommit
public boolean getNontransactionalWriteAutoCommit()
Accessor for nontransactionalWrite setting- Returns:
- The setting for nontransactionalWrite
-
getOptimistic
public boolean getOptimistic()
Accessor for optimistic setting- Specified by:
getOptimistic
in interfacejavax.jdo.Transaction
- Returns:
- The setting for optimistic
-
getRestoreValues
public boolean getRestoreValues()
Accessor for restoreValues setting- Specified by:
getRestoreValues
in interfacejavax.jdo.Transaction
- Returns:
- The setting for restoreValues
-
getRetainValues
public boolean getRetainValues()
Accessor for retainValues setting- Specified by:
getRetainValues
in interfacejavax.jdo.Transaction
- Returns:
- The setting for retainValues
-
getRollbackOnly
public boolean getRollbackOnly()
Accessor for whether to allow rollback only- Specified by:
getRollbackOnly
in interfacejavax.jdo.Transaction
- Returns:
- Whether to allow rollback only
-
getSynchronization
public javax.transaction.Synchronization getSynchronization()
Accessor for the synchronization (if any)- Specified by:
getSynchronization
in interfacejavax.jdo.Transaction
- Returns:
- The synchronization
-
setNontransactionalRead
public void setNontransactionalRead(boolean flag)
Mutator for the nontransactionalRead setting.- Specified by:
setNontransactionalRead
in interfacejavax.jdo.Transaction
- Parameters:
flag
- Whether to allow nontransactional read
-
setNontransactionalWrite
public void setNontransactionalWrite(boolean flag)
Mutator for the nontransactionalWrite setting.- Specified by:
setNontransactionalWrite
in interfacejavax.jdo.Transaction
- Parameters:
flag
- Whether to allow nontransactional write
-
setNontransactionalWriteAutoCommit
public void setNontransactionalWriteAutoCommit(boolean flag)
Mutator for the nontransactionalWrite auto-commit setting.- Parameters:
flag
- Whether to auto-commit any non-tx writes
-
setOptimistic
public void setOptimistic(boolean opt)
Mutator for the optimistic setting- Specified by:
setOptimistic
in interfacejavax.jdo.Transaction
- Parameters:
opt
- Whether to use optimistic transactions
-
setRestoreValues
public void setRestoreValues(boolean restore)
Mutator for the restore values setting- Specified by:
setRestoreValues
in interfacejavax.jdo.Transaction
- Parameters:
restore
- Whether to restore values
-
setRetainValues
public void setRetainValues(boolean retain)
Mutator for the retain values setting- Specified by:
setRetainValues
in interfacejavax.jdo.Transaction
- Parameters:
retain
- Whether to retain values after commit
-
setRollbackOnly
public void setRollbackOnly()
Mutator for the rollback-only setting- Specified by:
setRollbackOnly
in interfacejavax.jdo.Transaction
-
setSynchronization
public void setSynchronization(javax.transaction.Synchronization synch)
Mutator for the Synchronisation- Specified by:
setSynchronization
in interfacejavax.jdo.Transaction
- Parameters:
synch
- The Synchronisation
-
setIsolationLevel
public void setIsolationLevel(String level)
Mutator for the isolation level.- Specified by:
setIsolationLevel
in interfacejavax.jdo.Transaction
- Parameters:
level
- The level- Throws:
javax.jdo.JDOUserException
- if the required level is not supported.
-
getIsolationLevel
public String getIsolationLevel()
Accessor for the current isolation level.- Specified by:
getIsolationLevel
in interfacejavax.jdo.Transaction
- Returns:
- The isolation level.
-
setSavepoint
public void setSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.- Parameters:
name
- Name of the savepoint.- Throws:
UnsupportedOperationException
- if the underlying datastore doesn't support savepointsIllegalStateException
- if no name is provided
-
releaseSavepoint
public void releaseSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.- Parameters:
name
- Name of the savepoint.- Throws:
UnsupportedOperationException
- if the underlying datastore doesn't support savepointsIllegalStateException
- if no name is provided, or the name doesn't correspond to a known savepoint
-
rollbackToSavepoint
public void rollbackToSavepoint(String name)
Method to mark the current point as a savepoint with the provided name.- Parameters:
name
- Name of the savepoint.- Throws:
UnsupportedOperationException
- if the underlying datastore doesn't support savepointsIllegalStateException
- if no name is provided, or the name doesn't correspond to a known savepoint
-
assertNotCommitting
protected void assertNotCommitting()
Throw an Exception if the underlying transaction is currently committing.
-
assertNotInUse
protected void assertNotInUse()
Asserts that the transaction is not in use.
-
getSerializeRead
public Boolean getSerializeRead()
Accessor for whether to serialise any read objects in this transaction.- Specified by:
getSerializeRead
in interfacejavax.jdo.Transaction
- Returns:
- The setting for whether to serialise any read objects
-
setSerializeRead
public void setSerializeRead(Boolean serialize)
Mutator for whether to serialise any read objects.- Specified by:
setSerializeRead
in interfacejavax.jdo.Transaction
- Parameters:
serialize
- Whether to serialise any read objects in this transaction
-
setOption
public void setOption(String option, int value)
Convenience accessor for setting a transaction option.- Parameters:
option
- option namevalue
- The value
-
setOption
public void setOption(String option, boolean value)
Convenience accessor for setting a transaction option.- Parameters:
option
- option namevalue
- The value
-
setOption
public void setOption(String option, String value)
Convenience accessor for setting a transaction option.- Parameters:
option
- option namevalue
- The value
-
registerEventListener
public void registerEventListener(org.datanucleus.transaction.TransactionEventListener listener)
Method to register a listener for transaction events.- Parameters:
listener
- The listener
-
deregisterEventListener
public void deregisterEventListener(org.datanucleus.transaction.TransactionEventListener listener)
Method to deregister a listener for transaction events.- Parameters:
listener
- The listener to remove
-
-