Class PartitionStep
- java.lang.Object
- org.springframework.batch.core.step.AbstractStep
- org.springframework.batch.core.partition.support.PartitionStep
- All Implemented Interfaces:
Step
,org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanNameAware
,org.springframework.beans.factory.InitializingBean
- Direct Known Subclasses:
PartitionStep
public class PartitionStep extends AbstractStep
Implementation ofStep
which partitions the execution and spreads the load using aPartitionHandler
.- Since:
- 2.0
- Author:
- Dave Syer
Field Summary
Fields inherited from interface org.springframework.batch.core.Step
STEP_TYPE_KEY
Constructor Summary
Constructors Constructor Description PartitionStep()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterPropertiesSet()
Assert that mandatory properties are set (stepExecutionSplitter, partitionHandler) and delegate top superclass.protected void
doExecute(StepExecution stepExecution)
Delegate execution to thePartitionHandler
provided.protected PartitionHandler
getPartitionHandler()
protected StepExecutionSplitter
getStepExecutionSplitter()
void
setPartitionHandler(PartitionHandler partitionHandler)
APartitionHandler
which can send out step executions for remote processing and bring back the results.void
setStepExecutionAggregator(StepExecutionAggregator stepExecutionAggregator)
AStepExecutionAggregator
that can aggregate step executions when they come back from the handler.void
setStepExecutionSplitter(StepExecutionSplitter stepExecutionSplitter)
Public setter for mandatory propertyStepExecutionSplitter
.Methods inherited from class org.springframework.batch.core.step.AbstractStep
close, doExecutionRegistration, doExecutionRelease, execute, getCompositeListener, getJobRepository, getName, getStartLimit, isAllowStartIfComplete, open, registerStepExecutionListener, setAllowStartIfComplete, setBeanName, setJobRepository, setName, setStartLimit, setStepExecutionListeners, toString
Method Detail
setPartitionHandler
public void setPartitionHandler(PartitionHandler partitionHandler)
APartitionHandler
which can send out step executions for remote processing and bring back the results.- Parameters:
partitionHandler
- thePartitionHandler
to set
setStepExecutionAggregator
public void setStepExecutionAggregator(StepExecutionAggregator stepExecutionAggregator)
AStepExecutionAggregator
that can aggregate step executions when they come back from the handler. Defaults to aDefaultStepExecutionAggregator
.- Parameters:
stepExecutionAggregator
- theStepExecutionAggregator
to set
setStepExecutionSplitter
public void setStepExecutionSplitter(StepExecutionSplitter stepExecutionSplitter)
Public setter for mandatory propertyStepExecutionSplitter
.- Parameters:
stepExecutionSplitter
- theStepExecutionSplitter
to set
afterPropertiesSet
public void afterPropertiesSet() throws java.lang.Exception
Assert that mandatory properties are set (stepExecutionSplitter, partitionHandler) and delegate top superclass.- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
- Overrides:
afterPropertiesSet
in classAbstractStep
- Throws:
java.lang.Exception
- See Also:
AbstractStep.afterPropertiesSet()
doExecute
protected void doExecute(StepExecution stepExecution) throws java.lang.Exception
Delegate execution to thePartitionHandler
provided. TheStepExecution
passed in here becomes the parent or master execution for the partition, summarising the status on exit of the logical grouping of work carried out by thePartitionHandler
. The individual step executions and their input parameters (throughExecutionContext
) for the partition elements are provided by theStepExecutionSplitter
.- Specified by:
doExecute
in classAbstractStep
- Parameters:
stepExecution
- the master step execution for the partition- Throws:
java.lang.Exception
- checked exception thrown by implementation- See Also:
Step.execute(StepExecution)
getStepExecutionSplitter
protected StepExecutionSplitter getStepExecutionSplitter()
getPartitionHandler
protected PartitionHandler getPartitionHandler()