public class RemotePartitioningManagerStepBuilder extends PartitionStepBuilder
MessageChannelPartitionHandler on the manager step.
If no messagingTemplate is provided through
messagingTemplate(MessagingTemplate),
this builder will create one and set its default channel to the outputChannel
provided through outputChannel(MessageChannel).
If a messagingTemplate is provided, it is assumed that it is fully configured
and that its default channel is set to an output channel on which requests to workers
will be sent.
StepBuilderHelper.CommonStepPropertieslogger, properties| Constructor and Description |
|---|
RemotePartitioningManagerStepBuilder(java.lang.String stepName)
Create a new
RemotePartitioningManagerStepBuilder. |
| Modifier and Type | Method and Description |
|---|---|
RemotePartitioningManagerStepBuilder |
aggregator(StepExecutionAggregator aggregator)
Provide a step execution aggregator for aggregating partitioned step executions into a single result for the
PartitionStep itself. |
RemotePartitioningManagerStepBuilder |
allowStartIfComplete(boolean allowStartIfComplete) |
RemotePartitioningManagerStepBuilder |
beanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
Set the bean factory.
|
Step |
build() |
RemotePartitioningManagerStepBuilder |
gridSize(int gridSize)
A hint to the
PartitionStepBuilder.splitter(StepExecutionSplitter) about how many step executions are required. |
RemotePartitioningManagerStepBuilder |
inputChannel(org.springframework.messaging.MessageChannel inputChannel)
Set the input channel on which replies from workers will be received.
|
RemotePartitioningManagerStepBuilder |
jobExplorer(JobExplorer jobExplorer)
Set the job explorer.
|
RemotePartitioningManagerStepBuilder |
listener(java.lang.Object listener)
Registers objects using the annotation based listener configuration.
|
RemotePartitioningManagerStepBuilder |
listener(StepExecutionListener listener) |
RemotePartitioningManagerStepBuilder |
messagingTemplate(org.springframework.integration.core.MessagingTemplate messagingTemplate)
Set the
MessagingTemplate to use to send data to workers. |
RemotePartitioningManagerStepBuilder |
outputChannel(org.springframework.messaging.MessageChannel outputChannel)
Set the output channel on which requests to workers will be sent.
|
RemotePartitioningManagerStepBuilder |
partitioner(java.lang.String workerStepName,
Partitioner partitioner)
Add a partitioner which can be used to create a
StepExecutionSplitter. |
RemotePartitioningManagerStepBuilder |
partitionHandler(PartitionHandler partitionHandler)
This method will throw a
UnsupportedOperationException since
the partition handler of the manager step will be automatically set to an
instance of MessageChannelPartitionHandler. |
RemotePartitioningManagerStepBuilder |
pollInterval(long pollInterval)
How often to poll the job repository for the status of the workers.
|
RemotePartitioningManagerStepBuilder |
repository(JobRepository jobRepository) |
RemotePartitioningManagerStepBuilder |
splitter(StepExecutionSplitter splitter)
Provide an explicit
StepExecutionSplitter instead of having one build from the
PartitionStepBuilder.partitioner(String, Partitioner). |
RemotePartitioningManagerStepBuilder |
startLimit(int startLimit) |
RemotePartitioningManagerStepBuilder |
step(Step step)
Provide an actual step instance to execute in parallel.
|
RemotePartitioningManagerStepBuilder |
timeout(long timeout)
When using job repository polling, the time limit to wait.
|
RemotePartitioningManagerStepBuilder |
transactionManager(org.springframework.transaction.PlatformTransactionManager transactionManager) |
getAggregator, getGridSize, getPartitioner, getPartitionHandler, getSplitter, getStep, getStepName, getTaskExecutor, taskExecutorenhance, getJobRepository, getName, getTransactionManager, isAllowStartIfCompletepublic RemotePartitioningManagerStepBuilder(java.lang.String stepName)
RemotePartitioningManagerStepBuilder.stepName - name of the manager steppublic RemotePartitioningManagerStepBuilder inputChannel(org.springframework.messaging.MessageChannel inputChannel)
inputChannel - the input channelpublic RemotePartitioningManagerStepBuilder outputChannel(org.springframework.messaging.MessageChannel outputChannel)
Use either this setter or messagingTemplate(MessagingTemplate)
to provide a fully configured messaging template.
outputChannel - the output channel.messagingTemplate(MessagingTemplate)public RemotePartitioningManagerStepBuilder messagingTemplate(org.springframework.integration.core.MessagingTemplate messagingTemplate)
MessagingTemplate to use to send data to workers.
The default channel of the messaging template must be set.
Use either this setter to provide a fully configured messaging template or
provide an output channel through outputChannel(MessageChannel)
and a default messaging template will be created.
messagingTemplate - the messaging template to useoutputChannel(MessageChannel)public RemotePartitioningManagerStepBuilder jobExplorer(JobExplorer jobExplorer)
jobExplorer - the job explorer to use.public RemotePartitioningManagerStepBuilder pollInterval(long pollInterval)
pollInterval - the poll interval value in millisecondspublic RemotePartitioningManagerStepBuilder timeout(long timeout)
timeout - the timeout value in millisecondspublic RemotePartitioningManagerStepBuilder beanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
beanFactory - the bean factory to usepublic Step build()
build in class PartitionStepBuilderpublic RemotePartitioningManagerStepBuilder repository(JobRepository jobRepository)
repository in class StepBuilderHelper<PartitionStepBuilder>public RemotePartitioningManagerStepBuilder transactionManager(org.springframework.transaction.PlatformTransactionManager transactionManager)
transactionManager in class StepBuilderHelper<PartitionStepBuilder>public RemotePartitioningManagerStepBuilder partitioner(java.lang.String workerStepName, Partitioner partitioner)
PartitionStepBuilderStepExecutionSplitter. Use either this or an explicit
PartitionStepBuilder.splitter(StepExecutionSplitter) but not both.partitioner in class PartitionStepBuilderworkerStepName - the name of the worker step (used to construct step execution names)partitioner - a partitioner to usepublic RemotePartitioningManagerStepBuilder gridSize(int gridSize)
PartitionStepBuilderPartitionStepBuilder.splitter(StepExecutionSplitter) about how many step executions are required. If running
locally or remotely through a PartitionStepBuilder.taskExecutor(TaskExecutor) determines precisely the number of step
executions in the first attempt at a partition step execution.gridSize in class PartitionStepBuildergridSize - the grid sizepublic RemotePartitioningManagerStepBuilder step(Step step)
PartitionStepBuilderPartitionStepBuilder.partitionHandler(PartitionHandler) is provided, the step is optional and is only used to extract
configuration data (name and other basic properties of a step).step in class PartitionStepBuilderstep - a step to execute in parallelpublic RemotePartitioningManagerStepBuilder splitter(StepExecutionSplitter splitter)
PartitionStepBuilderStepExecutionSplitter instead of having one build from the
PartitionStepBuilder.partitioner(String, Partitioner). Useful if you need more control over the splitting.splitter in class PartitionStepBuildersplitter - a step execution splitterpublic RemotePartitioningManagerStepBuilder aggregator(StepExecutionAggregator aggregator)
PartitionStepBuilderPartitionStep itself. Default is a simple implementation that works in most cases.aggregator in class PartitionStepBuilderaggregator - a step execution aggregatorpublic RemotePartitioningManagerStepBuilder startLimit(int startLimit)
startLimit in class StepBuilderHelper<PartitionStepBuilder>public RemotePartitioningManagerStepBuilder listener(java.lang.Object listener)
StepBuilderHelperlistener in class StepBuilderHelper<PartitionStepBuilder>listener - the object that has a method configured with listener annotationpublic RemotePartitioningManagerStepBuilder listener(StepExecutionListener listener)
listener in class StepBuilderHelper<PartitionStepBuilder>public RemotePartitioningManagerStepBuilder allowStartIfComplete(boolean allowStartIfComplete)
allowStartIfComplete in class StepBuilderHelper<PartitionStepBuilder>public RemotePartitioningManagerStepBuilder partitionHandler(PartitionHandler partitionHandler) throws java.lang.UnsupportedOperationException
UnsupportedOperationException since
the partition handler of the manager step will be automatically set to an
instance of MessageChannelPartitionHandler.
When building a manager step for remote partitioning using this builder,
no partition handler must be provided.partitionHandler in class PartitionStepBuilderpartitionHandler - a partition handlerjava.lang.UnsupportedOperationException - if a partition handler is providedfor setting up a default handler that works with a local or remote Step