| java.lang.Object | ||
| ↳ | java.lang.Enum<E extends java.lang.Enum<E>> | |
| ↳ | com.atlassian.bitbucket.event.annotation.TransactionAware.When | |
Defines the different points, relative to a transaction's lifecycle, at which an event can be published.
| Enum Values | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| TransactionAware.When | AFTER_COMMIT | The event should be published after the transaction has committed, but before it has completed. | |||||||||
| TransactionAware.When | AFTER_COMPLETION | The event should be published after the transaction has completed, whether it is committedor rolled back. | |||||||||
| TransactionAware.When | IMMEDIATE | The event should be published immediately, regardless of any transaction in progress. | |||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| [Expand] Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class
  java.lang.Enum | |||||||||||
|  From class
  java.lang.Object | |||||||||||
|  From interface
  java.lang.Comparable | |||||||||||
The event should be published after the transaction has committed, but before it has
 completed.
 
Note: If the transaction does not commit (for example, an optimistic locking failure triggers a rollback on the transaction), the event will never be published.
The event should be published after the transaction has completed, whether it is
 committed or rolled back.
The event should be published immediately, regardless of any transaction in progress.
 Because TransactionAware is inherited, this entry allows derived classes to
 effectively disable transaction awareness imposed on them by superclasses. It should
 not be used otherwise; simply leaving off the TransactionAware annotation
 will produce the same behaviour.