Interface RemoteCommitProvider

All Superinterfaces:
Closeable
All Known Implementing Classes:
AbstractRemoteCommitProvider, DynamicTCPRemoteCommitProvider, JMSRemoteCommitProvider, KubernetesTCPRemoteCommitProvider, SingleJVMRemoteCommitProvider, TCPRemoteCommitProvider

public interface RemoteCommitProvider extends Closeable
An entity that is responsible for communicating commit notification to other RemoteCommitEventManagers. Each event manager creates a remote commit provider, based on the values of the openjpa.RemoteCommitProvider configuration property. An adapter that implements TransactionListener is registered with each Broker. This adapter invokes broadcast, which is responsible for notifying other remote commit provider objects of the commit changes. Upon receiving a notification from a different remote commit provider, a provider must notify all local remote commit listeners via the RemoteCommitEventManager.fireEvent(java.lang.Object, java.lang.Object) method. A remote commit provider must not fire remote events for commits that originated with a local broker.
Since:
0.2.5.0
Author:
Patrick Linskey
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Notifies other remote event managers in this JVM and on other machines of changes to the cache.
    void
    Free the resources used by this provider.
    void
    Set the "owning" remote event manager to notify when remote events are received from remote sources.
  • Method Details

    • setRemoteCommitEventManager

      void setRemoteCommitEventManager(RemoteCommitEventManager mgr)
      Set the "owning" remote event manager to notify when remote events are received from remote sources.
    • broadcast

      void broadcast(RemoteCommitEvent event)
      Notifies other remote event managers in this JVM and on other machines of changes to the cache. This method must not notify the event manager associated with the broker that originated this commit.
    • close

      void close()
      Free the resources used by this provider.
      Specified by:
      close in interface Closeable