Class SimpleJobExplorer

java.lang.Object
org.springframework.batch.core.explore.support.SimpleJobExplorer
All Implemented Interfaces:
JobExplorer

public class SimpleJobExplorer extends Object implements 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 Details

  • Method Details

    • getJobExecutions

      public List<JobExecution> getJobExecutions(JobInstance jobInstance)
      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. Use JobExplorer.getStepExecution(Long, Long) to hydrate them in that case.
      Specified by:
      getJobExecutions in interface JobExplorer
      Parameters:
      jobInstance - the JobInstance to query
      Returns:
      the set of all executions for the specified JobInstance
    • getLastJobExecution

      @Nullable public JobExecution getLastJobExecution(JobInstance jobInstance)
      Description copied from interface: JobExplorer
      Find the last JobExecution that has been created for a given JobInstance.
      Specified by:
      getLastJobExecution in interface JobExplorer
      Parameters:
      jobInstance - the JobInstance
      Returns:
      the last JobExecution that has been created for this instance or null if no job execution is found for the given job instance.
    • findRunningJobExecutions

      public Set<JobExecution> findRunningJobExecutions(@Nullable String jobName)
      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. Use JobExplorer.getStepExecution(Long, Long) to hydrate them in that case.
      Specified by:
      findRunningJobExecutions in interface JobExplorer
      Parameters:
      jobName - the name of the job
      Returns:
      the set of running executions for jobs with the specified name
    • getJobExecution

      @Nullable public JobExecution getJobExecution(@Nullable Long executionId)
      Description copied from interface: JobExplorer
      Retrieve a JobExecution by its id. The complete object graph for this execution should be returned (unless otherwise indicated) including the parent JobInstance and associated ExecutionContext and StepExecution instances (also including their execution contexts).
      Specified by:
      getJobExecution in interface JobExplorer
      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 a StepExecution by its id and parent JobExecution 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 interface JobExplorer
      Parameters:
      jobExecutionId - the parent job execution id
      executionId - the step execution id
      Returns:
      the StepExecution with this id, or null if not found
      See Also:
    • getJobInstance

      @Nullable public JobInstance getJobInstance(@Nullable Long instanceId)
      Specified by:
      getJobInstance in interface JobExplorer
      Parameters:
      instanceId - Long id for the jobInstance to obtain.
      Returns:
      the JobInstance with this id, or null
    • getLastJobInstance

      @Nullable public JobInstance getLastJobInstance(String jobName)
      Description copied from interface: JobExplorer
      Find the last job instance by Id for the given job.
      Specified by:
      getLastJobInstance in interface JobExplorer
      Parameters:
      jobName - name of the job
      Returns:
      the last job instance by Id if any or null otherwise
    • getJobInstances

      public List<JobInstance> getJobInstances(String jobName, int start, int count)
      Description copied from interface: JobExplorer
      Fetch JobInstance values in descending order of creation (and therefore usually of first execution).
      Specified by:
      getJobInstances in interface JobExplorer
      Parameters:
      jobName - the name of the job to query
      start - the start index of the instances to return
      count - the maximum number of instances to return
      Returns:
      the JobInstance values up to a maximum of count values
    • getJobNames

      public List<String> getJobNames()
      Description copied from interface: JobExplorer
      Query the repository for all unique JobInstance names (sorted alphabetically).
      Specified by:
      getJobNames in interface JobExplorer
      Returns:
      the set of job names that have been executed
    • getJobInstanceCount

      public int getJobInstanceCount(@Nullable String jobName) throws NoSuchJobException
      Description copied from interface: JobExplorer
      Query the repository for the number of unique JobInstances associated with the supplied job name.
      Specified by:
      getJobInstanceCount in interface JobExplorer
      Parameters:
      jobName - the name of the job to query for
      Returns:
      the number of JobInstances that exist within the associated job repository
      Throws:
      NoSuchJobException - thrown when there is no JobInstance for the jobName specified.
    • findJobInstancesByJobName

      public List<JobInstance> findJobInstancesByJobName(String jobName, int start, int count)
      Description copied from interface: JobExplorer
      Fetch JobInstance values in descending order of creation (and there for usually of first execution) with a 'like'/wildcard criteria.
      Specified by:
      findJobInstancesByJobName in interface JobExplorer
      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.