Class SimpleJobExplorer
java.lang.Object
org.springframework.batch.core.explore.support.SimpleJobExplorer
- All Implemented Interfaces:
JobExplorer
Implementation of
JobExplorer
using the injected DAOs.- Since:
- 2.0
- Author:
- Dave Syer, Lucas Ward, Michael Minella, Will Schipp, Mahmoud Ben Hassine
- See Also:
-
Constructor Summary
ConstructorDescriptionSimpleJobExplorer
(JobInstanceDao jobInstanceDao, JobExecutionDao jobExecutionDao, StepExecutionDao stepExecutionDao, ExecutionContextDao ecDao) Constructor to initialize the jobSimpleJobExplorer
. -
Method Summary
Modifier and TypeMethodDescriptionfindJobInstancesByJobName
(String jobName, int start, int count) FetchJobInstance
values in descending order of creation (and there for usually of first execution) with a 'like'/wildcard criteria.findRunningJobExecutions
(String jobName) Retrieve running job executions.getJobExecution
(Long executionId) Retrieve aJobExecution
by its id.getJobExecutions
(JobInstance jobInstance) Retrieve job executions by their job instance.getJobInstance
(Long instanceId) int
getJobInstanceCount
(String jobName) Query the repository for the number of uniqueJobInstance
s associated with the supplied job name.getJobInstances
(String jobName, int start, int count) FetchJobInstance
values in descending order of creation (and therefore usually of first execution).Query the repository for all uniqueJobInstance
names (sorted alphabetically).getLastJobExecution
(JobInstance jobInstance) Find the lastJobExecution
that has been created for a givenJobInstance
.getLastJobInstance
(String jobName) Find the last job instance by Id for the given job.getStepExecution
(Long jobExecutionId, Long executionId) Retrieve aStepExecution
by its id and parentJobExecution
id.
-
Constructor Details
-
SimpleJobExplorer
public SimpleJobExplorer(JobInstanceDao jobInstanceDao, JobExecutionDao jobExecutionDao, StepExecutionDao stepExecutionDao, ExecutionContextDao ecDao) Constructor to initialize the jobSimpleJobExplorer
.- Parameters:
jobInstanceDao
- TheJobInstanceDao
to be used by the repository.jobExecutionDao
- TheJobExecutionDao
to be used by the repository.stepExecutionDao
- TheStepExecutionDao
to be used by the repository.ecDao
- TheExecutionContextDao
to be used by the repository.
-
-
Method Details
-
getJobExecutions
Description copied from interface:JobExplorer
Retrieve job executions by their job instance. The corresponding step executions may not be fully hydrated (e.g. their execution context may be missing), depending on the implementation. UseJobExplorer.getStepExecution(Long, Long)
to hydrate them in that case.- Specified by:
getJobExecutions
in interfaceJobExplorer
- Parameters:
jobInstance
- theJobInstance
to query- Returns:
- the set of all executions for the specified
JobInstance
-
getLastJobExecution
Description copied from interface:JobExplorer
Find the lastJobExecution
that has been created for a givenJobInstance
.- Specified by:
getLastJobExecution
in interfaceJobExplorer
- Parameters:
jobInstance
- theJobInstance
- Returns:
- the last
JobExecution
that has been created for this instance ornull
if no job execution is found for the given job instance.
-
findRunningJobExecutions
Description copied from interface:JobExplorer
Retrieve running job executions. The corresponding step executions may not be fully hydrated (e.g. their execution context may be missing), depending on the implementation. UseJobExplorer.getStepExecution(Long, Long)
to hydrate them in that case.- Specified by:
findRunningJobExecutions
in interfaceJobExplorer
- Parameters:
jobName
- the name of the job- Returns:
- the set of running executions for jobs with the specified name
-
getJobExecution
Description copied from interface:JobExplorer
Retrieve aJobExecution
by its id. The complete object graph for this execution should be returned (unless otherwise indicated) including the parentJobInstance
and associatedExecutionContext
andStepExecution
instances (also including their execution contexts).- Specified by:
getJobExecution
in interfaceJobExplorer
- Parameters:
executionId
- the job execution id- Returns:
- the
JobExecution
with this id, or null if not found
-
getStepExecution
@Nullable public StepExecution getStepExecution(@Nullable Long jobExecutionId, @Nullable Long executionId) Description copied from interface:JobExplorer
Retrieve aStepExecution
by its id and parentJobExecution
id. The execution context for the step should be available in the result, and the parent job execution should have its primitive properties, but may not contain the job instance information.- Specified by:
getStepExecution
in interfaceJobExplorer
- Parameters:
jobExecutionId
- the parent job execution idexecutionId
- the step execution id- Returns:
- the
StepExecution
with this id, or null if not found - See Also:
-
getJobInstance
- Specified by:
getJobInstance
in interfaceJobExplorer
- Parameters:
instanceId
-Long
id for the jobInstance to obtain.- Returns:
- the
JobInstance
with this id, or null
-
getLastJobInstance
Description copied from interface:JobExplorer
Find the last job instance by Id for the given job.- Specified by:
getLastJobInstance
in interfaceJobExplorer
- Parameters:
jobName
- name of the job- Returns:
- the last job instance by Id if any or null otherwise
-
getJobInstances
Description copied from interface:JobExplorer
FetchJobInstance
values in descending order of creation (and therefore usually of first execution).- Specified by:
getJobInstances
in interfaceJobExplorer
- Parameters:
jobName
- the name of the job to querystart
- the start index of the instances to returncount
- the maximum number of instances to return- Returns:
- the
JobInstance
values up to a maximum of count values
-
getJobNames
Description copied from interface:JobExplorer
Query the repository for all uniqueJobInstance
names (sorted alphabetically).- Specified by:
getJobNames
in interfaceJobExplorer
- Returns:
- the set of job names that have been executed
-
getJobInstanceCount
Description copied from interface:JobExplorer
Query the repository for the number of uniqueJobInstance
s associated with the supplied job name.- Specified by:
getJobInstanceCount
in interfaceJobExplorer
- Parameters:
jobName
- the name of the job to query for- Returns:
- the number of
JobInstance
s that exist within the associated job repository - Throws:
NoSuchJobException
- thrown when there is noJobInstance
for the jobName specified.
-
findJobInstancesByJobName
Description copied from interface:JobExplorer
FetchJobInstance
values in descending order of creation (and there for usually of first execution) with a 'like'/wildcard criteria.- Specified by:
findJobInstancesByJobName
in interfaceJobExplorer
- Parameters:
jobName
- the name of the job to query for.start
- the start index of the instances to return.count
- the maximum number of instances to return.- Returns:
- a list of
JobInstance
for the job name requested.
-