public class ClusterService extends AbstractLifecycleComponent
Modifier and Type | Field and Description |
---|---|
static Setting<TimeValue> |
CLUSTER_SERVICE_SLOW_TASK_LOGGING_THRESHOLD_SETTING |
lifecycle
deprecationLogger, logger, settings
Constructor and Description |
---|
ClusterService(Settings settings,
ClusterSettings clusterSettings,
ThreadPool threadPool,
java.util.Map<java.lang.String,java.util.function.Supplier<ClusterState.Custom>> initialClusterStateCustoms) |
Modifier and Type | Method and Description |
---|---|
void |
addHighPriorityApplier(ClusterStateApplier applier)
Adds a high priority applier of updated cluster states.
|
void |
addListener(ClusterStateListener listener)
Add a listener for updated cluster states
|
void |
addLocalNodeMasterListener(LocalNodeMasterListener listener)
Add a listener for on/off local node master events
|
void |
addLowPriorityApplier(ClusterStateApplier applier)
Adds an applier which will be called after all high priority and normal appliers have been called.
|
void |
addStateApplier(ClusterStateApplier applier)
Adds a applier of updated cluster states.
|
void |
addTimeoutListener(TimeValue timeout,
TimeoutClusterStateListener listener)
Adds a cluster state listener that is expected to be removed during a short period of time.
|
static boolean |
assertClusterOrMasterStateThread() |
protected void |
doClose() |
protected void |
doStart() |
protected void |
doStop() |
ClusterApplierService |
getClusterApplierService() |
ClusterName |
getClusterName() |
ClusterSettings |
getClusterSettings() |
MasterService |
getMasterService() |
Settings |
getSettings() |
DiscoveryNode |
localNode()
The local node.
|
ClusterState.Builder |
newClusterStateBuilder()
Creates a new cluster state builder that is initialized with the cluster name and all initial cluster state customs.
|
OperationRouting |
operationRouting() |
void |
removeApplier(ClusterStateApplier applier)
Removes an applier of updated cluster states.
|
void |
removeListener(ClusterStateListener listener)
Removes a listener for updated cluster states.
|
void |
removeLocalNodeMasterListener(LocalNodeMasterListener listener)
Remove the given listener for on/off local master events
|
void |
removeTimeoutListener(TimeoutClusterStateListener listener)
Removes a timeout listener for updated cluster states.
|
void |
setNodeConnectionsService(NodeConnectionsService nodeConnectionsService) |
ClusterState |
state()
The currently applied cluster state.
|
<T extends ClusterStateTaskConfig & ClusterStateTaskExecutor<T> & ClusterStateTaskListener> |
submitStateUpdateTask(java.lang.String source,
T updateTask)
Submits a cluster state update task; unlike
submitStateUpdateTask(String, Object, ClusterStateTaskConfig,
ClusterStateTaskExecutor, ClusterStateTaskListener) , submitted updates will not be batched. |
<T> void |
submitStateUpdateTask(java.lang.String source,
T task,
ClusterStateTaskConfig config,
ClusterStateTaskExecutor<T> executor,
ClusterStateTaskListener listener)
Submits a cluster state update task; submitted updates will be
batched across the same instance of executor.
|
<T> void |
submitStateUpdateTasks(java.lang.String source,
java.util.Map<T,ClusterStateTaskListener> tasks,
ClusterStateTaskConfig config,
ClusterStateTaskExecutor<T> executor)
Submits a batch of cluster state update tasks; submitted updates are guaranteed to be processed together,
potentially with more tasks of the same executor.
|
addLifecycleListener, close, lifecycleState, removeLifecycleListener, start, stop
logDeprecatedSetting, logRemovedSetting, nodeName
public ClusterService(Settings settings, ClusterSettings clusterSettings, ThreadPool threadPool, java.util.Map<java.lang.String,java.util.function.Supplier<ClusterState.Custom>> initialClusterStateCustoms)
public ClusterState.Builder newClusterStateBuilder()
public void setNodeConnectionsService(NodeConnectionsService nodeConnectionsService)
protected void doStart()
doStart
in class AbstractLifecycleComponent
protected void doStop()
doStop
in class AbstractLifecycleComponent
protected void doClose()
doClose
in class AbstractLifecycleComponent
public DiscoveryNode localNode()
public OperationRouting operationRouting()
public ClusterState state()
public void addHighPriorityApplier(ClusterStateApplier applier)
public void addLowPriorityApplier(ClusterStateApplier applier)
public void addStateApplier(ClusterStateApplier applier)
public void removeApplier(ClusterStateApplier applier)
public void addListener(ClusterStateListener listener)
public void removeListener(ClusterStateListener listener)
public void removeTimeoutListener(TimeoutClusterStateListener listener)
public void addLocalNodeMasterListener(LocalNodeMasterListener listener)
public void removeLocalNodeMasterListener(LocalNodeMasterListener listener)
public void addTimeoutListener(@Nullable TimeValue timeout, TimeoutClusterStateListener listener)
public MasterService getMasterService()
public ClusterApplierService getClusterApplierService()
public static boolean assertClusterOrMasterStateThread()
public ClusterName getClusterName()
public ClusterSettings getClusterSettings()
public Settings getSettings()
public <T extends ClusterStateTaskConfig & ClusterStateTaskExecutor<T> & ClusterStateTaskListener> void submitStateUpdateTask(java.lang.String source, T updateTask)
submitStateUpdateTask(String, Object, ClusterStateTaskConfig,
ClusterStateTaskExecutor, ClusterStateTaskListener)
, submitted updates will not be batched.source
- the source of the cluster state update taskupdateTask
- the full context for the cluster state update
taskpublic <T> void submitStateUpdateTask(java.lang.String source, T task, ClusterStateTaskConfig config, ClusterStateTaskExecutor<T> executor, ClusterStateTaskListener listener)
T
- the type of the cluster state update task statesource
- the source of the cluster state update tasktask
- the state needed for the cluster state update taskconfig
- the cluster state update task configurationexecutor
- the cluster state update task executor; tasks
that share the same executor will be executed
batches on this executorlistener
- callback after the cluster state update task
completespublic <T> void submitStateUpdateTasks(java.lang.String source, java.util.Map<T,ClusterStateTaskListener> tasks, ClusterStateTaskConfig config, ClusterStateTaskExecutor<T> executor)
T
- the type of the cluster state update task statesource
- the source of the cluster state update tasktasks
- a map of update tasks and their corresponding listenersconfig
- the cluster state update task configurationexecutor
- the cluster state update task executor; tasks
that share the same executor will be executed
batches on this executor