Class DummyTransactionService

  • All Implemented Interfaces:
    TransactionService

    public class DummyTransactionService
    extends java.lang.Object
    implements TransactionService
    Simple implementation of the transaction service that serve up entirely useless user transactions. It is useful within the context of some tests.
    Author:
    Derek Hulley
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean getAllowWrite()
      Determine if the repository has been put into read only mode.
      javax.transaction.UserTransaction getNonPropagatingUserTransaction()
      Gets a user transaction that ensures a new transaction is created.
      javax.transaction.UserTransaction getNonPropagatingUserTransaction​(boolean readOnly)
      Gets a user transaction that ensures a new transaction is created.
      javax.transaction.UserTransaction getNonPropagatingUserTransaction​(boolean readOnly, boolean ignoreSystemReadOnly)
      Gets a user transaction that ensures a new transaction is created.
      RetryingTransactionHelper getRetryingTransactionHelper()
      Get the standard instance of the helper object that supports transaction retrying.
      javax.transaction.UserTransaction getUserTransaction()
      Gets a user transaction that supports transaction propagation.
      javax.transaction.UserTransaction getUserTransaction​(boolean readOnly)
      Gets a user transaction that supports transaction propagation.
      javax.transaction.UserTransaction getUserTransaction​(boolean readOnly, boolean ignoreSystemReadOnly)
      Gets a user transaction that supports transaction propagation.
      boolean isReadOnly()
      Determine if ALL user transactions will be read-only.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DummyTransactionService

        public DummyTransactionService()
    • Method Detail

      • getAllowWrite

        public boolean getAllowWrite()
        Description copied from interface: TransactionService
        Determine if the repository has been put into read only mode. This is independent of the current user.
        Specified by:
        getAllowWrite in interface TransactionService
        Returns:
        true if the repository is allowed to perform write operations
      • isReadOnly

        public boolean isReadOnly()
        Description copied from interface: TransactionService
        Determine if ALL user transactions will be read-only. The 'System' user is always allowed to write.
        Specified by:
        isReadOnly in interface TransactionService
        Returns:
        Returns true if all transactions are read-only AND the current user is not the 'System' user.
      • getUserTransaction

        public javax.transaction.UserTransaction getUserTransaction()
        Description copied from interface: TransactionService
        Gets a user transaction that supports transaction propagation. This is like the EJB REQUIRED transaction attribute.
        Specified by:
        getUserTransaction in interface TransactionService
        Returns:
        the user transaction
      • getUserTransaction

        public javax.transaction.UserTransaction getUserTransaction​(boolean readOnly)
        Description copied from interface: TransactionService
        Gets a user transaction that supports transaction propagation. This is like the EJB REQUIRED transaction attribute.
        Specified by:
        getUserTransaction in interface TransactionService
        Parameters:
        readOnly - Set true for a READONLY transaction instance, false otherwise. Note that it is not always possible to force a write transaction if the system is in read-only mode.
        Returns:
        the user transaction
      • getUserTransaction

        public javax.transaction.UserTransaction getUserTransaction​(boolean readOnly,
                                                                    boolean ignoreSystemReadOnly)
        Description copied from interface: TransactionService
        Gets a user transaction that supports transaction propagation. This is like the EJB REQUIRED transaction attribute.
        Specified by:
        getUserTransaction in interface TransactionService
        Parameters:
        readOnly - Set true for a READONLY transaction instance, false otherwise.
        ignoreSystemReadOnly - true to force the read-only flag to be respected regardless of the system read-only mode.
        Returns:
        the user transaction
      • getNonPropagatingUserTransaction

        public javax.transaction.UserTransaction getNonPropagatingUserTransaction()
        Description copied from interface: TransactionService
        Gets a user transaction that ensures a new transaction is created. Any enclosing transaction is not propagated. This is like the EJB REQUIRES_NEW transaction attribute - when the transaction is started, the current transaction will be suspended and a new one started.
        Specified by:
        getNonPropagatingUserTransaction in interface TransactionService
        Returns:
        Returns a non-propagating user transaction
      • getNonPropagatingUserTransaction

        public javax.transaction.UserTransaction getNonPropagatingUserTransaction​(boolean readOnly)
        Description copied from interface: TransactionService
        Gets a user transaction that ensures a new transaction is created. Any enclosing transaction is not propagated. This is like the EJB REQUIRES_NEW transaction attribute - when the transaction is started, the current transaction will be suspended and a new one started.
        Specified by:
        getNonPropagatingUserTransaction in interface TransactionService
        Parameters:
        readOnly - Set true for a READONLY transaction instance, false otherwise. Note that it is not always possible to force a write transaction if the system is in read-only mode.
        Returns:
        Returns a non-propagating user transaction
      • getNonPropagatingUserTransaction

        public javax.transaction.UserTransaction getNonPropagatingUserTransaction​(boolean readOnly,
                                                                                  boolean ignoreSystemReadOnly)
        Description copied from interface: TransactionService
        Gets a user transaction that ensures a new transaction is created. Any enclosing transaction is not propagated. This is like the EJB REQUIRES_NEW transaction attribute - when the transaction is started, the current transaction will be suspended and a new one started.
        Specified by:
        getNonPropagatingUserTransaction in interface TransactionService
        Parameters:
        readOnly - Set true for a READONLY transaction instance, false otherwise.
        ignoreSystemReadOnly - true to force the read-only flag to be respected regardless of the system read-only mode.
        Returns:
        Returns a non-propagating user transaction