@Override public void restartJobExecution(long jobExecutionId) throws NoSuchJobExecutionException { logger.info("Restarting Job with Id " + jobExecutionId); final TaskJobExecution taskJobExecution = this.getJobExecution(jobExecutionId); final JobExecution jobExecution = taskJobExecution.getJobExecution(); if (!JobUtils.isJobExecutionRestartable(taskJobExecution.getJobExecution())) { throw new JobNotRestartableException( String.format("JobExecution with Id '%s' and state '%s' is not " + "restartable.", jobExecution.getId(), taskJobExecution.getJobExecution().getStatus())); } TaskExecution taskExecution = this.taskExplorer.getTaskExecution(taskJobExecution.getTaskId()); TaskDefinition taskDefinition = this.taskDefinitionRepository.findById(taskExecution.getTaskName()) .orElseThrow(() -> new NoSuchTaskDefinitionException(taskExecution.getTaskName())); TaskDeployment taskDeployment = this.taskDeploymentRepository.findByTaskDeploymentId(String.valueOf(taskJobExecution.getTaskId())); if (taskDeployment != null) { Map<String, String> deploymentProperties = new HashMap<>(); deploymentProperties.put(DefaultTaskExecutionService.TASK_PLATFORM_NAME, taskDeployment.getPlatformName()); taskExecutionService.executeTask(taskDefinition.getName(), deploymentProperties, taskExecution.getArguments()); } else { throw new IllegalStateException(String.format("Did not find platform for taskName=[%s] , taskId=[%s]", taskExecution.getTaskName(),taskJobExecution.getTaskId())); } }
private TaskJobExecution getTaskJobExecution(JobExecution jobExecution) { return new TaskJobExecution(getTaskExecutionId(jobExecution), jobExecution, isTaskDefined(jobExecution), jobExecution.getStepExecutions().size()); }
public JobExecutionResource(TaskJobExecution taskJobExecution, TimeZone timeZone) { Assert.notNull(taskJobExecution, "taskJobExecution must not be null"); this.taskExecutionId = taskJobExecution.getTaskId(); this.jobExecution = taskJobExecution.getJobExecution(); this.timeZone = timeZone; this.executionId = jobExecution.getId(); this.jobId = jobExecution.getJobId(); this.stepExecutionCount = taskJobExecution.getStepExecutionCount(); this.jobParameters =converter.getProperties(jobExecution.getJobParameters()); this.jobParametersString = fromJobParameters( this.argumentSanitizer.sanitizeJobParameters(jobExecution.getJobParameters())); this.defined = taskJobExecution.isTaskDefined(); JobInstance jobInstance = jobExecution.getJobInstance(); if (jobInstance != null) {
public JobExecutionResource(TaskJobExecution taskJobExecution, TimeZone timeZone) { Assert.notNull(taskJobExecution, "taskJobExecution must not be null"); this.taskExecutionId = taskJobExecution.getTaskId(); this.jobExecution = taskJobExecution.getJobExecution(); this.timeZone = timeZone; this.executionId = jobExecution.getId(); this.jobParametersString = fromJobParameters( this.argumentSanitizer.sanitizeJobParameters(jobExecution.getJobParameters())); this.defined = taskJobExecution.isTaskDefined(); JobInstance jobInstance = jobExecution.getJobInstance(); if (jobInstance != null) {
@Override public JobExecutionThinResource toResource(TaskJobExecution taskJobExecution) { return createResourceWithId(taskJobExecution.getJobExecution().getId(), taskJobExecution); }
public JobExecutionThinResource(TaskJobExecution taskJobExecution, TimeZone timeZone) { Assert.notNull(taskJobExecution, "taskJobExecution must not be null"); this.taskExecutionId = taskJobExecution.getTaskId(); JobExecution jobExecution = taskJobExecution.getJobExecution(); this.timeZone = timeZone; this.executionId = jobExecution.getId(); this.jobId = jobExecution.getJobId(); this.stepExecutionCount = taskJobExecution.getStepExecutionCount(); this.jobParameters =converter.getProperties(jobExecution.getJobParameters()); this.jobParametersString = fromJobParameters( this.argumentSanitizer.sanitizeJobParameters(jobExecution.getJobParameters())); this.defined = taskJobExecution.isTaskDefined(); JobInstance jobInstance = jobExecution.getJobInstance(); this.status = taskJobExecution.getJobExecution().getStatus(); if (jobInstance != null) { this.name = jobInstance.getJobName();
@Override public JobExecutionResource toResource(TaskJobExecution taskJobExecution) { return createResourceWithId(taskJobExecution.getJobExecution().getId(), taskJobExecution); }
@Override public void restartJobExecution(long jobExecutionId) throws NoSuchJobExecutionException { logger.info("Restarting Job with Id " + jobExecutionId); final TaskJobExecution taskJobExecution = this.getJobExecution(jobExecutionId); final JobExecution jobExecution = taskJobExecution.getJobExecution(); if (!JobUtils.isJobExecutionRestartable(taskJobExecution.getJobExecution())) { throw new JobNotRestartableException( String.format("JobExecution with Id '%s' and state '%s' is not " + "restartable.", jobExecution.getId(), taskJobExecution.getJobExecution().getStatus())); } TaskExecution taskExecution = this.taskExplorer.getTaskExecution(taskJobExecution.getTaskId()); TaskDefinition taskDefinition = this.taskDefinitionRepository.findOne(taskExecution.getTaskName()); if (taskDefinition == null) { throw new NoSuchTaskDefinitionException(taskExecution.getTaskName()); } taskService.executeTask(taskDefinition.getName(), taskDefinition.getProperties(), taskExecution.getArguments()); }
@Override public JobExecutionResource toResource(TaskJobExecution taskJobExecution) { return createResourceWithId(taskJobExecution.getJobExecution().getId(), taskJobExecution); }
private TaskJobExecution getTaskJobExecutionWithStepCount(JobExecutionWithStepCount jobExecutionWithStepCount) { return new TaskJobExecution(getTaskExecutionId(jobExecutionWithStepCount), jobExecutionWithStepCount, isTaskDefined(jobExecutionWithStepCount), jobExecutionWithStepCount.getStepCount()); }
private TaskJobExecution getTaskJobExecution(JobExecution jobExecution) { Assert.notNull(jobExecution, "jobExecution must not be null"); Long taskExecutionId = taskExplorer.getTaskExecutionIdByJobExecutionId( jobExecution.getId()); if(taskExecutionId == null) { String message = String.format("No corresponding taskExecutionId " + "for jobExecutionId %s. This indicates that Spring " + "Batch application has been executed that is not a Spring " + "Cloud Task.", jobExecution.getId()); logger.warn(message); throw new NoSuchTaskBatchException(message); } return new TaskJobExecution(taskExecutionId, jobExecution, isTaskDefined(jobExecution)); }