Interface ExternalTransactionController

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void beginTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Begin a transaction externally.
      void clearSequencingListeners()
      INTERNAL: Clears sequencing listeners.
      void commitTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Commit a transaction externally.
      org.eclipse.persistence.internal.sequencing.SequencingCallback getActiveSequencingCallback​(DatabaseSession dbSession, org.eclipse.persistence.internal.sequencing.SequencingCallbackFactory sequencingCallbackFactory)
      INTERNAL: Returns sequencingCallback for the current active external transaction.
      org.eclipse.persistence.internal.sessions.UnitOfWorkImpl getActiveUnitOfWork()
      INTERNAL: Return the active unit of work for the current active external transaction.
      ExceptionHandler getExceptionHandler()
      Return the exception handler used to handle or wrap exceptions thrown in before/after completion.
      org.eclipse.persistence.internal.sessions.AbstractSession getSession()
      INTERNAL: Return the manager's session.
      void initializeSequencingListeners()
      INTERNAL: Initializes sequencing listeners.
      void markTransactionForRollback()
      INTERNAL: Marks the external transaction for rollback only.
      void registerSynchronizationListener​(org.eclipse.persistence.internal.sessions.UnitOfWorkImpl uow, org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Register a listener on the unit of work.
      void rollbackTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Rollback a transaction externally.
      void setExceptionHandler​(ExceptionHandler exceptionHandler)
      Set an exception handler to handle or wrap exceptions thrown in before/after completion.
      void setSession​(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Set the manager's session.
    • Method Detail

      • beginTransaction

        void beginTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL: Begin a transaction externally. This allows for EclipseLink to force a JTS transaction.
      • commitTransaction

        void commitTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL: Commit a transaction externally. This allows for EclipseLink to force a JTS transaction.
      • getActiveUnitOfWork

        org.eclipse.persistence.internal.sessions.UnitOfWorkImpl getActiveUnitOfWork()
        INTERNAL: Return the active unit of work for the current active external transaction.
      • getSession

        org.eclipse.persistence.internal.sessions.AbstractSession getSession()
        INTERNAL: Return the manager's session.
      • registerSynchronizationListener

        void registerSynchronizationListener​(org.eclipse.persistence.internal.sessions.UnitOfWorkImpl uow,
                                             org.eclipse.persistence.internal.sessions.AbstractSession session)
                                      throws DatabaseException
        INTERNAL: Register a listener on the unit of work. The listener will callback to the unit of work to tell it to commit and merge.
        Throws:
        DatabaseException
      • rollbackTransaction

        void rollbackTransaction​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL: Rollback a transaction externally. This allows for EclipseLink to force a JTS transaction.
      • markTransactionForRollback

        void markTransactionForRollback()
        INTERNAL: Marks the external transaction for rollback only.
      • setSession

        void setSession​(org.eclipse.persistence.internal.sessions.AbstractSession session)
        INTERNAL: Set the manager's session.
      • initializeSequencingListeners

        void initializeSequencingListeners()
        INTERNAL: Initializes sequencing listeners. Always clears sequencing listeners first. There are two methods calling this method: 1. setSession method - this could lead to initialization of sequencing listeners only if sequencing already connected (that would happen if setSession is called after session.login, which is normally not the case). 2. in the very end of connecting sequencing, after it's determined whether sequencing callbacks (and therefore listeners) will be required.
      • getActiveSequencingCallback

        org.eclipse.persistence.internal.sequencing.SequencingCallback getActiveSequencingCallback​(DatabaseSession dbSession,
                                                                                                   org.eclipse.persistence.internal.sequencing.SequencingCallbackFactory sequencingCallbackFactory)
        INTERNAL: Returns sequencingCallback for the current active external transaction. DatabaseSession is passed for the sake of SessionBroker case. This method requires active external transaction.
      • clearSequencingListeners

        void clearSequencingListeners()
        INTERNAL: Clears sequencing listeners. Called by initializeSequencingListeners and by sequencing on disconnect.
      • getExceptionHandler

        ExceptionHandler getExceptionHandler()
        Return the exception handler used to handle or wrap exceptions thrown in before/after completion.
      • setExceptionHandler

        void setExceptionHandler​(ExceptionHandler exceptionHandler)
        Set an exception handler to handle or wrap exceptions thrown in before/after completion.