All Classes and Interfaces
Class
Description
Base class which implements the concept of a 'BackgroundCheck',
a thread that periodically executes a check until that one succeeds.
An AsyncEvent can be enqueued to the AsyncEventSender for
later, asynchronous triggering
Very simple abstract base class for the TopologyView which
comes with the 'setNotCurrent()' method - that allows the
ViewStateManager to mark a topologyView as no longer current
- and the isCurrent() is handled accordingly.
The ClusterSyncService can be used to establish strong
consistency with the underlying (eventually consistent) repository in use.
Allows chaining of ClusterSyncService, itself implementing
the ClusterSyncService interface
Default implementation of the ClusterView interface.
Base implementation for the InstanceDescription interface.
Provides the configuration of a few paths needed by discovery-lite processing services
Simplifies access to the underlying JSON-backed oak discovery-lite descriptor
Contains static factory methods for creating TopologyEvents with BaseTopologyView
as well as some TopologyEvent related helper methods
The IdMapService is responsible for storing a slingId-clusterNodeId
pair to the repository and given all other instances in the cluster
do the same can map clusterNodeIds to slingIds (or vice-versa)
This listener facade applies a 'startup delay' to a topology event handler,
that is, it allows to specify a startup time during which any topology events
will be queued and processing only starts after this time.
The
InstancesDiff
allows to combine and filter two collections of InstanceDescription
instances,
an "old" collection and a "new" collection.Helper class to help reduce log.info output.
InstanceDescription which represents an instance that is explicitly
not local, ie isOwn==false.
The OakBacklogClusterSyncService will wait until all instances
in the local cluster are no longer in any backlog state.
Some helper methods surrounding resources
Implements the syncToken idea: each instance stores a key-value
pair with key=stringId and value=discoveryLiteSequenceNumber
under /var/discovery/oak/syncTokens - and then waits until it
sees the same token from all other instances in the cluster.
The ViewStateManager is at the core of managing TopologyEventListeners,
the 'view state' (changing vs changed) and sending out the appropriate
and according TopologyEvents to the registered listeners - depending
on the implementation it also supports the ClusterSyncService, which is
invoked on handleNewView.
Used to create an implementation classes of type ViewStateManager
(with the idea to be able to leave the implementation classes
as package-protected)
The ViewStateManager is at the core of managing TopologyEventListeners,
the 'view state' (changing vs changed) and sending out the appropriate
and according TopologyEvents to the registered listeners.