Class RemotePartitioningWorkerStepBuilder
java.lang.Object
org.springframework.batch.core.step.builder.StepBuilderHelper<org.springframework.batch.core.step.builder.StepBuilder>
org.springframework.batch.core.step.builder.StepBuilder
org.springframework.batch.integration.partition.RemotePartitioningWorkerStepBuilder
public class RemotePartitioningWorkerStepBuilder
extends org.springframework.batch.core.step.builder.StepBuilder
Builder for a worker step in a remote partitioning setup. This builder creates an
IntegrationFlow that:
- listens to
StepExecutionRequests coming from the manager on the input channel - invokes the
StepExecutionRequestHandlerto execute the worker step for each incoming request. The worker step is located using the providedStepLocator. If noStepLocatoris provided, aBeanFactoryStepLocatorconfigured with the currentBeanFactorywill be used - replies to the manager on the output channel (when the manager step is configured
to aggregate replies from workers). If no output channel is provided, a
NullChannelwill be used (assuming the manager side is configured to poll the job repository for workers status)
- Since:
- 4.1
- Author:
- Mahmoud Ben Hassine
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper
org.springframework.batch.core.step.builder.StepBuilderHelper.CommonStepProperties -
Field Summary
Fields inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper
properties -
Constructor Summary
ConstructorsConstructorDescriptionRemotePartitioningWorkerStepBuilder(String name, org.springframework.batch.core.repository.JobRepository jobRepository) Initialize a step builder for a step with the given name. -
Method Summary
Modifier and TypeMethodDescriptionallowStartIfComplete(boolean allowStartIfComplete) beanFactory(org.springframework.beans.factory.BeanFactory beanFactory) Set the bean factory.<I,O> org.springframework.batch.core.step.builder.SimpleStepBuilder <I, O> chunk(int chunkSize, org.springframework.transaction.PlatformTransactionManager transactionManager) <I,O> org.springframework.batch.core.step.builder.SimpleStepBuilder <I, O> chunk(org.springframework.batch.infrastructure.repeat.CompletionPolicy completionPolicy, org.springframework.transaction.PlatformTransactionManager transactionManager) Deprecated, for removal: This API element is subject to removal in a future version.org.springframework.batch.core.step.builder.FlowStepBuilderflow(org.springframework.batch.core.job.flow.Flow flow) inputChannel(org.springframework.messaging.MessageChannel inputChannel) Set the input channel on which step execution requests sent by the manager are received.org.springframework.batch.core.step.builder.JobStepBuilderjob(org.springframework.batch.core.job.Job job) listener(org.springframework.batch.core.listener.StepExecutionListener listener) outputChannel(org.springframework.messaging.MessageChannel outputChannel) Set the output channel on which replies will be sent to the manager step.org.springframework.batch.core.step.builder.PartitionStepBuilderpartitioner(String stepName, org.springframework.batch.core.partition.Partitioner partitioner) org.springframework.batch.core.step.builder.PartitionStepBuilderpartitioner(org.springframework.batch.core.step.Step step) startLimit(int startLimit) stepLocator(org.springframework.batch.core.step.StepLocator stepLocator) Set the step locator used to locate the worker step to execute.org.springframework.batch.core.step.builder.TaskletStepBuildertasklet(org.springframework.batch.core.step.tasklet.Tasklet tasklet, org.springframework.transaction.PlatformTransactionManager transactionManager) Methods inherited from class org.springframework.batch.core.step.builder.StepBuilder
chunk, self, taskletMethods inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper
enhance, getJobRepository, getName, isAllowStartIfComplete, observationRegistry
-
Constructor Details
-
RemotePartitioningWorkerStepBuilder
public RemotePartitioningWorkerStepBuilder(String name, org.springframework.batch.core.repository.JobRepository jobRepository) Initialize a step builder for a step with the given name.- Parameters:
name- the name of the stepjobRepository- the job repository to which the step should report to- Since:
- 5.0
-
-
Method Details
-
inputChannel
public RemotePartitioningWorkerStepBuilder inputChannel(org.springframework.messaging.MessageChannel inputChannel) Set the input channel on which step execution requests sent by the manager are received.- Parameters:
inputChannel- the input channel- Returns:
- this builder instance for fluent chaining
-
outputChannel
public RemotePartitioningWorkerStepBuilder outputChannel(org.springframework.messaging.MessageChannel outputChannel) Set the output channel on which replies will be sent to the manager step.- Parameters:
outputChannel- the input channel- Returns:
- this builder instance for fluent chaining
-
stepLocator
public RemotePartitioningWorkerStepBuilder stepLocator(org.springframework.batch.core.step.StepLocator stepLocator) Set the step locator used to locate the worker step to execute.- Parameters:
stepLocator- the step locator to use- Returns:
- this builder instance for fluent chaining
-
beanFactory
public RemotePartitioningWorkerStepBuilder beanFactory(org.springframework.beans.factory.BeanFactory beanFactory) Set the bean factory.- Parameters:
beanFactory- the bean factory- Returns:
- this builder instance for fluent chaining
-
startLimit
- Overrides:
startLimitin classorg.springframework.batch.core.step.builder.StepBuilderHelper<org.springframework.batch.core.step.builder.StepBuilder>
-
listener
- Overrides:
listenerin classorg.springframework.batch.core.step.builder.StepBuilderHelper<org.springframework.batch.core.step.builder.StepBuilder>
-
listener
public RemotePartitioningWorkerStepBuilder listener(org.springframework.batch.core.listener.StepExecutionListener listener) - Overrides:
listenerin classorg.springframework.batch.core.step.builder.StepBuilderHelper<org.springframework.batch.core.step.builder.StepBuilder>
-
allowStartIfComplete
- Overrides:
allowStartIfCompletein classorg.springframework.batch.core.step.builder.StepBuilderHelper<org.springframework.batch.core.step.builder.StepBuilder>
-
tasklet
public org.springframework.batch.core.step.builder.TaskletStepBuilder tasklet(org.springframework.batch.core.step.tasklet.Tasklet tasklet, org.springframework.transaction.PlatformTransactionManager transactionManager) - Overrides:
taskletin classorg.springframework.batch.core.step.builder.StepBuilder
-
chunk
public <I,O> org.springframework.batch.core.step.builder.SimpleStepBuilder<I,O> chunk(int chunkSize, org.springframework.transaction.PlatformTransactionManager transactionManager) - Overrides:
chunkin classorg.springframework.batch.core.step.builder.StepBuilder
-
chunk
@Deprecated(since="6.0", forRemoval=true) public <I,O> org.springframework.batch.core.step.builder.SimpleStepBuilder<I,O> chunk(org.springframework.batch.infrastructure.repeat.CompletionPolicy completionPolicy, org.springframework.transaction.PlatformTransactionManager transactionManager) Deprecated, for removal: This API element is subject to removal in a future version.- Overrides:
chunkin classorg.springframework.batch.core.step.builder.StepBuilder
-
partitioner
public org.springframework.batch.core.step.builder.PartitionStepBuilder partitioner(String stepName, org.springframework.batch.core.partition.Partitioner partitioner) - Overrides:
partitionerin classorg.springframework.batch.core.step.builder.StepBuilder
-
partitioner
public org.springframework.batch.core.step.builder.PartitionStepBuilder partitioner(org.springframework.batch.core.step.Step step) - Overrides:
partitionerin classorg.springframework.batch.core.step.builder.StepBuilder
-
job
public org.springframework.batch.core.step.builder.JobStepBuilder job(org.springframework.batch.core.job.Job job) - Overrides:
jobin classorg.springframework.batch.core.step.builder.StepBuilder
-
flow
public org.springframework.batch.core.step.builder.FlowStepBuilder flow(org.springframework.batch.core.job.flow.Flow flow) - Overrides:
flowin classorg.springframework.batch.core.step.builder.StepBuilder
-