From 1851025c54751b34007c4e25c3c986013649f38d Mon Sep 17 00:00:00 2001 From: robokaso Date: Wed, 19 Mar 2008 09:31:10 +0000 Subject: [PATCH] REOPENED - issue BATCH-472: Exceeding the start limit on a step will cause a vague exception type to be thrown. http://jira.springframework.org/browse/BATCH-472 StartLimitExceededException made public and moved to core package. The constructor changed to simply accept string. --- .../batch/core/StartLimitExceededException.java | 11 +++++++++++ .../springframework/batch/core/job/SimpleJob.java | 4 +++- .../core/job/StartLimitExceededException.java | 15 --------------- .../batch/core/job/SimpleJobTests.java | 1 + 4 files changed, 15 insertions(+), 16 deletions(-) create mode 100644 spring-batch-core/src/main/java/org/springframework/batch/core/StartLimitExceededException.java delete mode 100644 spring-batch-core/src/main/java/org/springframework/batch/core/job/StartLimitExceededException.java diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/StartLimitExceededException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/StartLimitExceededException.java new file mode 100644 index 000000000..7e0a79bf3 --- /dev/null +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/StartLimitExceededException.java @@ -0,0 +1,11 @@ +package org.springframework.batch.core; + +/** + * Indicates the step's start limit has been exceeded. + */ +public class StartLimitExceededException extends RuntimeException { + + public StartLimitExceededException(String message) { + super(message); + } +} diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/job/SimpleJob.java b/spring-batch-core/src/main/java/org/springframework/batch/core/job/SimpleJob.java index b5dc4ae0b..ec68557a4 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/job/SimpleJob.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/job/SimpleJob.java @@ -21,6 +21,7 @@ import java.util.Iterator; import java.util.List; import org.springframework.batch.core.BatchStatus; +import org.springframework.batch.core.StartLimitExceededException; import org.springframework.batch.core.UnexpectedJobExecutionException; import org.springframework.batch.core.JobExecution; import org.springframework.batch.core.JobExecutionException; @@ -198,7 +199,8 @@ public class SimpleJob extends AbstractJob { } else { // start max has been exceeded, throw an exception. - throw new StartLimitExceededException(step); + throw new StartLimitExceededException("Maximum start limit exceeded for step: " + step.getName() + + "StartMax: " + step.getStartLimit()); } } diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/job/StartLimitExceededException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/job/StartLimitExceededException.java deleted file mode 100644 index ee1246758..000000000 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/job/StartLimitExceededException.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.springframework.batch.core.job; - -import org.springframework.batch.core.Step; -import org.springframework.batch.core.UnexpectedJobExecutionException; - -/** - * Indicates the step's start limit has been exceeded. - */ -class StartLimitExceededException extends UnexpectedJobExecutionException { - - public StartLimitExceededException(Step step) { - super("Maximum start limit exceeded for step: " + step.getName() - + "StartMax: " + step.getStartLimit()); - } -} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/job/SimpleJobTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/job/SimpleJobTests.java index 02ac3ed68..6441a228a 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/job/SimpleJobTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/job/SimpleJobTests.java @@ -28,6 +28,7 @@ import org.springframework.batch.core.JobExecutionException; import org.springframework.batch.core.JobInstance; import org.springframework.batch.core.JobInterruptedException; import org.springframework.batch.core.JobParameters; +import org.springframework.batch.core.StartLimitExceededException; import org.springframework.batch.core.Step; import org.springframework.batch.core.StepExecution; import org.springframework.batch.core.UnexpectedJobExecutionException;