@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
/ *
* Copyright 2002 - 2020 the original author or authors .
* Copyright 2002 - 2021 the original author or authors .
*
* Licensed under the Apache License , Version 2 . 0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
@ -21,10 +21,11 @@ import java.util.function.Consumer;
@@ -21,10 +21,11 @@ import java.util.function.Consumer;
import org.springframework.transaction.support.TransactionSynchronization ;
/ * *
* The phase at which a transactional event listener applies .
* The phase in which a transactional event listener applies .
*
* @author Stephane Nicoll
* @author Juergen Hoeller
* @author Sam Brannen
* @since 4 . 2
* @see TransactionalEventListener # phase ( )
* @see TransactionalApplicationListener # getTransactionPhase ( )
@ -33,35 +34,44 @@ import org.springframework.transaction.support.TransactionSynchronization;
@@ -33,35 +34,44 @@ import org.springframework.transaction.support.TransactionSynchronization;
public enum TransactionPhase {
/ * *
* Fir e the event before transaction commit .
* Handl e the event before transaction commit .
* @see TransactionSynchronization # beforeCommit ( boolean )
* /
BEFORE_COMMIT ,
/ * *
* Fir e the event after the commit has completed successfully .
* < p > Note : This is a specialization of { @link # AFTER_COMPLETION } and
* therefore executes in the same after - completion sequence of events ,
* Handl e the event after the commit has completed successfully .
* < p > Note : This is a specialization of { @link # AFTER_COMPLETION } and therefore
* executes in the same sequence of events as { @code AFTER_COMPLETION }
* ( and not in { @link TransactionSynchronization # afterCommit ( ) } ) .
* < p > Interactions with the underlying transactional resource will not be
* committed in this phase . See
* { @link TransactionSynchronization # afterCompletion ( int ) } for details .
* @see TransactionSynchronization # afterCompletion ( int )
* @see TransactionSynchronization # STATUS_COMMITTED
* /
AFTER_COMMIT ,
/ * *
* Fire the event if the transaction has rolled back .
* < p > Note : This is a specialization of { @link # AFTER_COMPLETION } and
* therefore executes in the same after - completion sequence of events .
* Handle the event if the transaction has rolled back .
* < p > Note : This is a specialization of { @link # AFTER_COMPLETION } and therefore
* executes in the same sequence of events as { @code AFTER_COMPLETION } .
* < p > Interactions with the underlying transactional resource will not be
* committed in this phase . See
* { @link TransactionSynchronization # afterCompletion ( int ) } for details .
* @see TransactionSynchronization # afterCompletion ( int )
* @see TransactionSynchronization # STATUS_ROLLED_BACK
* /
AFTER_ROLLBACK ,
/ * *
* Fir e the event after the transaction has completed .
* Handl e the event after the transaction has completed .
* < p > For more fine - grained events , use { @link # AFTER_COMMIT } or
* { @link # AFTER_ROLLBACK } to intercept transaction commit
* or rollback , respectively .
* < p > Interactions with the underlying transactional resource will not be
* committed in this phase . See
* { @link TransactionSynchronization # afterCompletion ( int ) } for details .
* @see TransactionSynchronization # afterCompletion ( int )
* /
AFTER_COMPLETION