Package org.apache.openjpa.event
Class RemoteCommitEventManager
java.lang.Object
org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager
org.apache.openjpa.event.RemoteCommitEventManager
- All Implemented Interfaces:
Serializable,EndTransactionListener,Closeable,EventManager
public class RemoteCommitEventManager
extends AbstractConcurrentEventManager
implements EndTransactionListener, Closeable
Manager that can be used to track and notify
RemoteCommitListeners on remote commit events. If remote events
are enabled, this manager should be installed as a transaction listener on
all brokers so that it knows when commits are made.- Since:
- 0.3.0
- Author:
- Patrick Linskey, Abe White
- See Also:
-
Field Summary
Fields inherited from class org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager
_listeners -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds an OpenJPA-internal listener to this RemoteCommitEventManager.voidaddListener(RemoteCommitListener listen) voidafterCommit(TransactionEvent event) Notification that a transaction has successfully committed.voidNotification that a transaction has successfully committed and the transaction is no longer active.voidafterRollback(TransactionEvent event) Notification that a transaction has been rolled back.voidNotification that a transaction has been rolled back and the transaction is no longer active.voidNotification that state transitions are complete.booleanReturn true if remote events are enabled.voidbeforeCommit(TransactionEvent event) Notification that the next flush is for the transaction commit.voidclose()Close this manager and all registered listeners.protected voidImplement this method to fire the given event to the given listener.voidFire an event to local listeners only notifying them of a detected stale record.Return theRemoteCommitProviderthat this manager uses.booleanWhether the oids of added instances will be transmitted.voidsetTransmitPersistedObjectIds(boolean transmit) Whether the oids of added instances will be transmitted.Methods inherited from class org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager
addListener, fireEvent, getListeners, hasListener, hasListeners, isFailFast, newListenerCollection, removeListener, setFailFast
-
Constructor Details
-
RemoteCommitEventManager
Constructor. Supply configuration.
-
-
Method Details
-
areRemoteEventsEnabled
public boolean areRemoteEventsEnabled()Return true if remote events are enabled. -
getRemoteCommitProvider
Return theRemoteCommitProviderthat this manager uses.- Since:
- 0.3.1
-
getTransmitPersistedObjectIds
public boolean getTransmitPersistedObjectIds()Whether the oids of added instances will be transmitted. -
setTransmitPersistedObjectIds
public void setTransmitPersistedObjectIds(boolean transmit) Whether the oids of added instances will be transmitted. -
addInternalListener
Adds an OpenJPA-internal listener to this RemoteCommitEventManager. Listeners so registered will be fired before any that are registered viaaddListener(org.apache.openjpa.event.RemoteCommitListener). This means that the external listeners can rely on internal caches and data structures being up-to-date by the time that they are invoked.- Since:
- 1.0.0
-
addListener
-
close
public void close()Close this manager and all registered listeners. -
fireEvent
Description copied from class:AbstractConcurrentEventManagerImplement this method to fire the given event to the given listener.- Specified by:
fireEventin classAbstractConcurrentEventManager
-
fireLocalStaleNotification
Fire an event to local listeners only notifying them of a detected stale record.- Since:
- 1.0.0
-
afterCommit
Description copied from interface:EndTransactionListenerNotification that a transaction has successfully committed.- Specified by:
afterCommitin interfaceEndTransactionListener- See Also:
-
beforeCommit
Description copied from interface:EndTransactionListenerNotification that the next flush is for the transaction commit.- Specified by:
beforeCommitin interfaceEndTransactionListener- See Also:
-
afterRollback
Description copied from interface:EndTransactionListenerNotification that a transaction has been rolled back.- Specified by:
afterRollbackin interfaceEndTransactionListener- See Also:
-
afterCommitComplete
Description copied from interface:EndTransactionListenerNotification that a transaction has successfully committed and the transaction is no longer active.- Specified by:
afterCommitCompletein interfaceEndTransactionListener- See Also:
-
afterRollbackComplete
Description copied from interface:EndTransactionListenerNotification that a transaction has been rolled back and the transaction is no longer active.- Specified by:
afterRollbackCompletein interfaceEndTransactionListener- See Also:
-
afterStateTransitions
Description copied from interface:EndTransactionListenerNotification that state transitions are complete.- Specified by:
afterStateTransitionsin interfaceEndTransactionListener- See Also:
-