Package com.yahoo.search.cluster
Class ClusterMonitor<T>
java.lang.Object
com.yahoo.search.cluster.ClusterMonitor<T>
Monitors of a cluster of remote nodes.
The monitor uses an internal thread for node monitoring.
All public methods of this class are multithread safe.
- Author:
- bratseth
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a new node for monitoring.void
failed
(T node, ErrorMessage error) Called from ClusterSearcher/NodeManager when a node failedReturns the configuration of this cluster monitorboolean
isClosed()
Returns a thread-safe snapshot of the NodeMonitors of all added nodesReturns a thread-safe snapshot of the NodeMonitors of all added nodesvoid
Ping all nodes which needs pinging to discover state changesvoid
Called when a node respondedvoid
shutdown()
Must be called when this goes out of usevoid
start()
-
Constructor Details
-
ClusterMonitor
-
-
Method Details
-
start
public void start() -
getConfiguration
Returns the configuration of this cluster monitor -
isClosed
public boolean isClosed() -
add
Adds a new node for monitoring. The object representing the node must- Have a sensible toString
- Have a sensible identity (equals and hashCode)
- Parameters:
node
- the object representing the nodeinternal
- whether or not this node is internal to this cluster
-
failed
Called from ClusterSearcher/NodeManager when a node failed -
responded
Called when a node responded -
ping
Ping all nodes which needs pinging to discover state changes -
nodeMonitorIterator
Returns a thread-safe snapshot of the NodeMonitors of all added nodes -
nodeMonitors
Returns a thread-safe snapshot of the NodeMonitors of all added nodes -
shutdown
public void shutdown()Must be called when this goes out of use
-