Class TaskBatcher
- java.lang.Object
-
- org.elasticsearch.cluster.service.TaskBatcher
-
public abstract class TaskBatcher extends java.lang.ObjectBatching support forPrioritizedEsThreadPoolExecutorTasks that share the same batching key are batched (seeTaskBatcher.BatchedTask.batchingKey)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classTaskBatcher.BatchedTaskRepresents a runnable task that supports batching.
-
Constructor Summary
Constructors Constructor Description TaskBatcher(org.apache.logging.log4j.Logger logger, PrioritizedEsThreadPoolExecutor threadExecutor)
-
Method Summary
Modifier and Type Method Description protected abstract voidonTimeout(java.util.List<? extends TaskBatcher.BatchedTask> tasks, TimeValue timeout)Action to be implemented by the specific batching implementation.protected abstract voidrun(java.lang.Object batchingKey, java.util.List<? extends TaskBatcher.BatchedTask> tasks, java.lang.String tasksSummary)Action to be implemented by the specific batching implementation All tasks have the given batching key.voidsubmitTasks(java.util.List<? extends TaskBatcher.BatchedTask> tasks, TimeValue timeout)
-
-
-
Constructor Detail
-
TaskBatcher
public TaskBatcher(org.apache.logging.log4j.Logger logger, PrioritizedEsThreadPoolExecutor threadExecutor)
-
-
Method Detail
-
submitTasks
public void submitTasks(java.util.List<? extends TaskBatcher.BatchedTask> tasks, @Nullable TimeValue timeout) throws EsRejectedExecutionException
- Throws:
EsRejectedExecutionException
-
onTimeout
protected abstract void onTimeout(java.util.List<? extends TaskBatcher.BatchedTask> tasks, TimeValue timeout)
Action to be implemented by the specific batching implementation. All tasks have the same batching key.
-
run
protected abstract void run(java.lang.Object batchingKey, java.util.List<? extends TaskBatcher.BatchedTask> tasks, java.lang.String tasksSummary)Action to be implemented by the specific batching implementation All tasks have the given batching key.
-
-