|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.batch.admin.service.SimpleJobService
public class SimpleJobService
Implementation of JobService that delegates most of its work to other
off-the-shelf components.
| Constructor Summary | |
|---|---|
SimpleJobService(SearchableJobInstanceDao jobInstanceDao,
SearchableJobExecutionDao jobExecutionDao,
SearchableStepExecutionDao stepExecutionDao,
org.springframework.batch.core.repository.JobRepository jobRepository,
org.springframework.batch.core.launch.JobLauncher jobLauncher,
org.springframework.batch.core.configuration.ListableJobLocator jobLocator,
org.springframework.batch.core.repository.dao.ExecutionContextDao executionContextDao)
|
|
| Method Summary | |
|---|---|
org.springframework.batch.core.JobExecution |
abandon(java.lang.Long jobExecutionId)
Mark the JobExecution as ABANDONED. |
int |
countJobExecutions()
Count the maximum number of executions that could be returned by JobService.listJobExecutions(int, int). |
int |
countJobExecutionsForJob(java.lang.String name)
Count the job executions in the repository for a job. |
int |
countJobInstances(java.lang.String name)
Count the number of job instances in the repository
for a given job name. |
int |
countJobs()
Count the total number of jobs that can be returned by JobService.listJobs(int, int). |
int |
countStepExecutionsForStep(java.lang.String jobName,
java.lang.String stepName)
Count the step executions in the repository for a given step name (or pattern). |
void |
destroy()
Stop all the active jobs and wait for them (up to a time out) to finish processing. |
org.springframework.batch.core.JobExecution |
getJobExecution(java.lang.Long jobExecutionId)
Get a JobExecution by id. |
java.util.Collection<org.springframework.batch.core.JobExecution> |
getJobExecutionsForJobInstance(java.lang.String name,
java.lang.Long jobInstanceId)
Get all the job executions for a given job instance. |
org.springframework.batch.core.JobInstance |
getJobInstance(long jobInstanceId)
Get a job instance by id. |
org.springframework.batch.core.JobParameters |
getLastJobParameters(java.lang.String jobName)
Get the last JobParameters used to execute a job successfully. |
org.springframework.batch.core.StepExecution |
getStepExecution(java.lang.Long jobExecutionId,
java.lang.Long stepExecutionId)
Locate a StepExecution from its id and that of its parent
JobExecution. |
java.util.Collection<org.springframework.batch.core.StepExecution> |
getStepExecutions(java.lang.Long jobExecutionId)
Get the step executions for a given job execution
(by id). |
java.util.Collection<java.lang.String> |
getStepNamesForJob(java.lang.String jobName)
Get the names of the steps in a job (or a historical list of recent execution names if the Job is not launchable). |
boolean |
isIncrementable(java.lang.String jobName)
Check if a job has a JobParametersIncrementer. |
boolean |
isLaunchable(java.lang.String jobName)
Convenience method to determine if a job is available for launching. |
org.springframework.batch.core.JobExecution |
launch(java.lang.String jobName,
org.springframework.batch.core.JobParameters jobParameters)
Launch a job with the parameters provided. |
java.util.Collection<org.springframework.batch.core.JobExecution> |
listJobExecutions(int start,
int count)
List the job executions in descending order of
creation (usually close to execution order). |
java.util.Collection<org.springframework.batch.core.JobExecution> |
listJobExecutionsForJob(java.lang.String jobName,
int start,
int count)
List the job executions for a job in descending
order of creation (usually close to execution order). |
java.util.Collection<org.springframework.batch.core.JobInstance> |
listJobInstances(java.lang.String jobName,
int start,
int count)
List the job instances in descending order of
creation (usually close to order of execution). |
java.util.Collection<java.lang.String> |
listJobs(int start,
int count)
Query the job names in the system, either launchable or not. |
java.util.Collection<org.springframework.batch.core.StepExecution> |
listStepExecutionsForStep(java.lang.String jobName,
java.lang.String stepName,
int start,
int count)
List the step executions for a step in descending
order of creation (usually close to execution order). |
void |
removeInactiveExecutions()
Check all the active executions and see if they are still actually running. |
org.springframework.batch.core.JobExecution |
restart(java.lang.Long jobExecutionId)
Launch a job with the parameters provided. |
void |
setShutdownTimeout(int shutdownTimeout)
Timeout for shutdown waiting for jobs to finish processing. |
org.springframework.batch.core.JobExecution |
stop(java.lang.Long jobExecutionId)
Send a signal to a job execution to stop processing. |
int |
stopAll()
Send a stop signal to all running job executions. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SimpleJobService(SearchableJobInstanceDao jobInstanceDao,
SearchableJobExecutionDao jobExecutionDao,
SearchableStepExecutionDao stepExecutionDao,
org.springframework.batch.core.repository.JobRepository jobRepository,
org.springframework.batch.core.launch.JobLauncher jobLauncher,
org.springframework.batch.core.configuration.ListableJobLocator jobLocator,
org.springframework.batch.core.repository.dao.ExecutionContextDao executionContextDao)
| Method Detail |
|---|
public void setShutdownTimeout(int shutdownTimeout)
shutdownTimeout - in milliseconds (default 60 secs)
public java.util.Collection<org.springframework.batch.core.StepExecution> getStepExecutions(java.lang.Long jobExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException
JobServicestep executions for a given job execution
(by id).
getStepExecutions in interface JobServicejobExecutionId - the parent job execution id
org.springframework.batch.core.launch.NoSuchJobExecutionExceptionpublic boolean isLaunchable(java.lang.String jobName)
JobServiceJobService.listJobs(int, int) might be in the
repository, but not be launchable if the host application has no
configuration for them.
isLaunchable in interface JobServicejobName - the name of the job
public boolean isIncrementable(java.lang.String jobName)
JobServiceJobParametersIncrementer.
isIncrementable in interface JobServicejobName - the job name
public org.springframework.batch.core.JobExecution restart(java.lang.Long jobExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException,
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException,
org.springframework.batch.core.repository.JobRestartException,
org.springframework.batch.core.repository.JobInstanceAlreadyCompleteException,
org.springframework.batch.core.launch.NoSuchJobException,
org.springframework.batch.core.JobParametersInvalidException
JobService
restart in interface JobServicejobExecutionId - the job execution to restart
JobExecution if successful
org.springframework.batch.core.launch.NoSuchJobExecutionException
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException
org.springframework.batch.core.repository.JobRestartException
org.springframework.batch.core.repository.JobInstanceAlreadyCompleteException
org.springframework.batch.core.launch.NoSuchJobException
org.springframework.batch.core.JobParametersInvalidException
public org.springframework.batch.core.JobExecution launch(java.lang.String jobName,
org.springframework.batch.core.JobParameters jobParameters)
throws org.springframework.batch.core.launch.NoSuchJobException,
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException,
org.springframework.batch.core.repository.JobRestartException,
org.springframework.batch.core.repository.JobInstanceAlreadyCompleteException,
org.springframework.batch.core.JobParametersInvalidException
JobService
launch in interface JobServicejobName - the job namejobParameters - the JobParameters
JobExecution if successful
org.springframework.batch.core.launch.NoSuchJobException
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException
org.springframework.batch.core.repository.JobRestartException
org.springframework.batch.core.repository.JobInstanceAlreadyCompleteException
org.springframework.batch.core.JobParametersInvalidException
public org.springframework.batch.core.JobParameters getLastJobParameters(java.lang.String jobName)
throws org.springframework.batch.core.launch.NoSuchJobException
JobServiceJobParameters used to execute a job successfully.
getLastJobParameters in interface JobServicejobName - the name of the job
org.springframework.batch.core.launch.NoSuchJobException
public java.util.Collection<org.springframework.batch.core.JobExecution> listJobExecutions(int start,
int count)
JobServicejob executions in descending order of
creation (usually close to execution order).
listJobExecutions in interface JobServicestart - the index of the first execution to returncount - the maximum number of executions
JobExecutionpublic int countJobExecutions()
JobServiceJobService.listJobExecutions(int, int).
countJobExecutions in interface JobService
public java.util.Collection<java.lang.String> listJobs(int start,
int count)
JobServiceJobRepository.
listJobs in interface JobServicestart - the start index of the job names to returncount - the maximum number of job names to return
public int countJobs()
JobServiceJobService.listJobs(int, int).
countJobs in interface JobServicepublic int stopAll()
JobService
stopAll in interface JobService
public org.springframework.batch.core.JobExecution stop(java.lang.Long jobExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException,
org.springframework.batch.core.launch.JobExecutionNotRunningException
JobServiceJob and Step
implementations to ensure that the signal is obeyed. In particular, if
users provide a custom Tasklet to a Step it must check
the signal in the JobExecution itself.
stop in interface JobServicejobExecutionId - the job execution id to stop
JobExecution that was stopped
org.springframework.batch.core.launch.NoSuchJobExecutionException
org.springframework.batch.core.launch.JobExecutionNotRunningException
public org.springframework.batch.core.JobExecution abandon(java.lang.Long jobExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException,
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException
JobServiceJobExecution as ABANDONED. If a stop signal is ignored
because the process died this is the best way to mark a job as finished
with (as opposed to STOPPED). An abandoned job execution can be
restarted, but a stopping one cannot.
abandon in interface JobServicejobExecutionId - the job execution id to abort
JobExecution that was aborted
org.springframework.batch.core.launch.NoSuchJobExecutionException
org.springframework.batch.core.repository.JobExecutionAlreadyRunningException - if the job is running (it
should be stopped first)
public int countJobExecutionsForJob(java.lang.String name)
throws org.springframework.batch.core.launch.NoSuchJobException
JobService
countJobExecutionsForJob in interface JobServicename - the job name
org.springframework.batch.core.launch.NoSuchJobException
public int countJobInstances(java.lang.String name)
throws org.springframework.batch.core.launch.NoSuchJobException
JobServicejob instances in the repository
for a given job name.
countJobInstances in interface JobServicename - the name of the job
org.springframework.batch.core.launch.NoSuchJobException
public org.springframework.batch.core.JobExecution getJobExecution(java.lang.Long jobExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException
JobServiceJobExecution by id.
getJobExecution in interface JobServicejobExecutionId - the job execution id
JobExecution
org.springframework.batch.core.launch.NoSuchJobExecutionException
public java.util.Collection<org.springframework.batch.core.JobExecution> getJobExecutionsForJobInstance(java.lang.String name,
java.lang.Long jobInstanceId)
throws org.springframework.batch.core.launch.NoSuchJobException
JobService
getJobExecutionsForJobInstance in interface JobServicename - the name of the jobjobInstanceId - the id of the job instance
org.springframework.batch.core.launch.NoSuchJobException
public org.springframework.batch.core.StepExecution getStepExecution(java.lang.Long jobExecutionId,
java.lang.Long stepExecutionId)
throws org.springframework.batch.core.launch.NoSuchJobExecutionException,
NoSuchStepExecutionException
JobServiceStepExecution from its id and that of its parent
JobExecution.
getStepExecution in interface JobServicejobExecutionId - the job execution idstepExecutionId - the step execution id
StepExecution
org.springframework.batch.core.launch.NoSuchJobExecutionException
NoSuchStepExecutionException
public java.util.Collection<org.springframework.batch.core.JobExecution> listJobExecutionsForJob(java.lang.String jobName,
int start,
int count)
throws org.springframework.batch.core.launch.NoSuchJobException
JobServicejob executions for a job in descending
order of creation (usually close to execution order).
listJobExecutionsForJob in interface JobServicejobName - the job namestart - the start index of the first job executioncount - the maximum number of executions to return
JobExecution
org.springframework.batch.core.launch.NoSuchJobException
public java.util.Collection<org.springframework.batch.core.StepExecution> listStepExecutionsForStep(java.lang.String jobName,
java.lang.String stepName,
int start,
int count)
throws org.springframework.batch.core.step.NoSuchStepException
JobServicestep executions for a step in descending
order of creation (usually close to execution order).
listStepExecutionsForStep in interface JobServicejobName - the name of the job associated with the step (or a pattern
with wildcards)stepName - the step name (or a pattern with wildcards)start - the start index of the first executioncount - the maximum number of executions to return
StepExecution
org.springframework.batch.core.step.NoSuchStepException
public int countStepExecutionsForStep(java.lang.String jobName,
java.lang.String stepName)
throws org.springframework.batch.core.step.NoSuchStepException
JobService
countStepExecutionsForStep in interface JobServicejobName - the job name (or a pattern with wildcards)stepName - the step name (or a pattern with wildcards)
org.springframework.batch.core.step.NoSuchStepException
public org.springframework.batch.core.JobInstance getJobInstance(long jobInstanceId)
throws org.springframework.batch.core.launch.NoSuchJobInstanceException
JobServicejob instance by id.
getJobInstance in interface JobServicejobInstanceId - the id of the instance
job instance
org.springframework.batch.core.launch.NoSuchJobInstanceException
public java.util.Collection<org.springframework.batch.core.JobInstance> listJobInstances(java.lang.String jobName,
int start,
int count)
throws org.springframework.batch.core.launch.NoSuchJobException
JobServicejob instances in descending order of
creation (usually close to order of execution).
listJobInstances in interface JobServicejobName - the name of the jobstart - the index of the first to returncount - the maximum number of instances to return
job instances
org.springframework.batch.core.launch.NoSuchJobException
public java.util.Collection<java.lang.String> getStepNamesForJob(java.lang.String jobName)
throws org.springframework.batch.core.launch.NoSuchJobException
JobService
getStepNamesForJob in interface JobServicejobName - the name of the job
org.springframework.batch.core.launch.NoSuchJobException - if the job name cannot be located
public void destroy()
throws java.lang.Exception
destroy in interface org.springframework.beans.factory.DisposableBeanjava.lang.Exception@Scheduled(fixedDelay=60000L) public void removeInactiveExecutions()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||