diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/DuplicateJobException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/DuplicateJobException.java similarity index 95% rename from spring-batch-core/src/main/java/org/springframework/batch/core/repository/DuplicateJobException.java rename to spring-batch-core/src/main/java/org/springframework/batch/core/configuration/DuplicateJobException.java index 636a8860a..777ead743 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/DuplicateJobException.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/DuplicateJobException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.configuration; import org.springframework.batch.core.Job; import org.springframework.batch.core.JobExecutionException; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobLocator.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobLocator.java index 20007e81d..a7e6f9f83 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobLocator.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobLocator.java @@ -16,7 +16,7 @@ package org.springframework.batch.core.configuration; import org.springframework.batch.core.Job; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; /** * A runtime service locator interface for retrieving job configurations by diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobRegistry.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobRegistry.java index a8a661ea3..d1fad94c3 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobRegistry.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/JobRegistry.java @@ -16,7 +16,6 @@ package org.springframework.batch.core.configuration; import org.springframework.batch.core.Job; -import org.springframework.batch.core.repository.DuplicateJobException; /** * A runtime service registry interface for registering job configurations by diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessor.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessor.java index f0e9676e9..6ca62ad61 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessor.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessor.java @@ -19,9 +19,9 @@ import java.util.Collection; import java.util.HashSet; import org.springframework.batch.core.Job; +import org.springframework.batch.core.configuration.DuplicateJobException; import org.springframework.batch.core.configuration.JobLocator; import org.springframework.batch.core.configuration.JobRegistry; -import org.springframework.batch.core.repository.DuplicateJobException; import org.springframework.beans.BeansException; import org.springframework.beans.FatalBeanException; import org.springframework.beans.factory.DisposableBean; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/MapJobRegistry.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/MapJobRegistry.java index d41356b7a..791d16ceb 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/MapJobRegistry.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/MapJobRegistry.java @@ -22,11 +22,11 @@ import java.util.HashSet; import java.util.Map; import org.springframework.batch.core.Job; +import org.springframework.batch.core.configuration.DuplicateJobException; import org.springframework.batch.core.configuration.JobFactory; import org.springframework.batch.core.configuration.JobRegistry; import org.springframework.batch.core.configuration.ListableJobRegistry; -import org.springframework.batch.core.repository.DuplicateJobException; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.util.Assert; /** diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/JobInstanceAlreadyExistsException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsException.java similarity index 96% rename from spring-batch-core/src/main/java/org/springframework/batch/core/repository/JobInstanceAlreadyExistsException.java rename to spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsException.java index f1114c329..10d5a251b 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/JobInstanceAlreadyExistsException.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.launch; import org.springframework.batch.core.Job; import org.springframework.batch.core.JobExecutionException; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobOperator.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobOperator.java index 36c3fc3a2..153e7c04e 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobOperator.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/JobOperator.java @@ -19,10 +19,8 @@ import java.util.List; import java.util.Map; import java.util.Set; -import org.springframework.batch.core.repository.JobInstanceAlreadyExistsException; +import org.springframework.batch.core.repository.JobInstanceAlreadyCompleteException; import org.springframework.batch.core.repository.JobRestartException; -import org.springframework.batch.core.repository.NoSuchJobException; -import org.springframework.batch.core.repository.NoSuchJobExecutionException; /** * A really low level interface for inspecting and controlling jobs with access @@ -46,7 +44,7 @@ public interface JobOperator { Long start(String jobName, String parameters) throws NoSuchJobException, JobInstanceAlreadyExistsException, JobRestartException; - Long resume(Long executionId) throws JobExecutionNotFailedException, NoSuchJobExecutionException, + Long resume(Long executionId) throws JobInstanceAlreadyCompleteException, NoSuchJobExecutionException, NoSuchJobException; Long startNextInstance(String jobName) throws NoSuchJobException, JobParametersIncrementerNotFoundException; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobException.java similarity index 95% rename from spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobException.java rename to spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobException.java index ca251868a..44d39abd2 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobException.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.launch; import org.springframework.batch.core.Job; import org.springframework.batch.core.JobExecutionException; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobExecutionException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobExecutionException.java similarity index 96% rename from spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobExecutionException.java rename to spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobExecutionException.java index dd7393321..63e863bf2 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobExecutionException.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobExecutionException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.launch; import org.springframework.batch.core.JobExecution; import org.springframework.batch.core.JobExecutionException; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobInstanceException.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobInstanceException.java similarity index 96% rename from spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobInstanceException.java rename to spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobInstanceException.java index fb680915c..01629991f 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/NoSuchJobInstanceException.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/NoSuchJobInstanceException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.launch; import org.springframework.batch.core.JobExecutionException; import org.springframework.batch.core.JobInstance; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/JobRegistryBackgroundJobRunner.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/JobRegistryBackgroundJobRunner.java index a59b9c7f2..7aef2b44e 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/JobRegistryBackgroundJobRunner.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/JobRegistryBackgroundJobRunner.java @@ -23,12 +23,12 @@ import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.batch.core.Job; +import org.springframework.batch.core.configuration.DuplicateJobException; import org.springframework.batch.core.configuration.JobFactory; import org.springframework.batch.core.configuration.JobRegistry; import org.springframework.batch.core.configuration.support.ApplicationContextJobFactory; import org.springframework.batch.core.configuration.support.ClassPathXmlApplicationContextFactory; import org.springframework.batch.core.launch.JobLauncher; -import org.springframework.batch.core.repository.DuplicateJobException; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.config.AutowireCapableBeanFactory; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/SimpleExportedJobLauncher.java b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/SimpleExportedJobLauncher.java index 654233865..aaa21612f 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/SimpleExportedJobLauncher.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/launch/support/SimpleExportedJobLauncher.java @@ -31,7 +31,7 @@ import org.springframework.batch.core.configuration.JobLocator; import org.springframework.batch.core.converter.DefaultJobParametersConverter; import org.springframework.batch.core.converter.JobParametersConverter; import org.springframework.batch.core.launch.JobLauncher; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.batch.item.ExecutionContext; import org.springframework.batch.support.PropertiesConverter; import org.springframework.beans.factory.InitializingBean; diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/MapJobExecutionDao.java b/spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/MapJobExecutionDao.java index b38a067d6..2512e5e71 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/MapJobExecutionDao.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/MapJobExecutionDao.java @@ -66,25 +66,6 @@ public class MapJobExecutionDao implements JobExecutionDao { return lastExec; } - /* (non-Javadoc) - * @see org.springframework.batch.core.repository.dao.JobExecutionDao#getLastJobExecution(java.lang.String) - */ - public JobExecution getLastJobExecution(String jobName) { - JobExecution lastExec = null; - for (JobExecution exec : executionsById.values()) { - if (!exec.getJobInstance().getJobName().equals(jobName)) { - continue; - } - if (lastExec == null) { - lastExec = exec; - } - if (lastExec.getCreateTime().before(exec.getCreateTime())) { - lastExec = exec; - } - } - return lastExec; - } - /* (non-Javadoc) * @see org.springframework.batch.core.repository.dao.JobExecutionDao#findRunningJobExecutions(java.lang.String) */ diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/step/AbstractStep.java b/spring-batch-core/src/main/java/org/springframework/batch/core/step/AbstractStep.java index 5e5b712b5..edc7cd70e 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/step/AbstractStep.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/step/AbstractStep.java @@ -27,10 +27,10 @@ import org.springframework.batch.core.Step; import org.springframework.batch.core.StepExecution; import org.springframework.batch.core.StepExecutionListener; import org.springframework.batch.core.UnexpectedJobExecutionException; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.batch.core.launch.support.ExitCodeMapper; import org.springframework.batch.core.listener.CompositeStepExecutionListener; import org.springframework.batch.core.repository.JobRepository; -import org.springframework.batch.core.repository.NoSuchJobException; import org.springframework.batch.item.ExecutionContext; import org.springframework.batch.repeat.ExitStatus; import org.springframework.beans.factory.BeanNameAware; diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/DuplicateJobExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/DuplicateJobExceptionTests.java similarity index 91% rename from spring-batch-core/src/test/java/org/springframework/batch/core/repository/DuplicateJobExceptionTests.java rename to spring-batch-core/src/test/java/org/springframework/batch/core/configuration/DuplicateJobExceptionTests.java index 4ebabb386..ead268026 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/DuplicateJobExceptionTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/DuplicateJobExceptionTests.java @@ -13,10 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.configuration; import org.springframework.batch.core.AbstractExceptionTests; -import org.springframework.batch.core.repository.DuplicateJobException; +import org.springframework.batch.core.configuration.DuplicateJobException; /** * @author Dave Syer diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobFactoryRegistrationListenerTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobFactoryRegistrationListenerTests.java new file mode 100644 index 000000000..4a21cdac1 --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobFactoryRegistrationListenerTests.java @@ -0,0 +1,74 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.configuration.support; + +import static org.junit.Assert.*; + +import org.junit.Test; +import org.springframework.batch.core.Job; +import org.springframework.batch.core.configuration.JobFactory; + +/** + * @author Dave Syer + * + */ +public class JobFactoryRegistrationListenerTests { + + private JobFactoryRegistrationListener listener = new JobFactoryRegistrationListener(); + + private MapJobRegistry registry = new MapJobRegistry(); + + /** + * Test method for + * {@link org.springframework.batch.core.configuration.support.JobFactoryRegistrationListener#bind(org.springframework.batch.core.configuration.JobFactory, java.util.Map)}. + * @throws Exception + */ + @Test + public void testBind() throws Exception { + listener.setJobRegistry(registry); + listener.bind(new JobFactory() { + public Job createJob() { + return null; + } + + public String getJobName() { + return "foo"; + } + }, null); + assertEquals(1, registry.getJobNames().size()); + } + + /** + * Test method for + * {@link org.springframework.batch.core.configuration.support.JobFactoryRegistrationListener#unbind(org.springframework.batch.core.configuration.JobFactory, java.util.Map)}. + * @throws Exception + */ + @Test + public void testUnbind() throws Exception { + testBind(); + listener.unbind(new JobFactory() { + public Job createJob() { + return null; + } + + public String getJobName() { + return "foo"; + } + }, null); + assertEquals(0, registry.getJobNames().size()); + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessorTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessorTests.java index 3c8ef6ec1..9eea071f9 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessorTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/JobRegistryBeanPostProcessorTests.java @@ -19,11 +19,11 @@ import java.util.Collection; import junit.framework.TestCase; +import org.springframework.batch.core.configuration.DuplicateJobException; import org.springframework.batch.core.configuration.support.JobRegistryBeanPostProcessor; import org.springframework.batch.core.configuration.support.MapJobRegistry; import org.springframework.batch.core.job.JobSupport; -import org.springframework.batch.core.repository.DuplicateJobException; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.beans.FatalBeanException; import org.springframework.context.support.ClassPathXmlApplicationContext; diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/MapJobRegistryTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/MapJobRegistryTests.java index 783220a64..ab0928868 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/MapJobRegistryTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/MapJobRegistryTests.java @@ -19,12 +19,12 @@ import java.util.Collection; import junit.framework.TestCase; +import org.springframework.batch.core.configuration.DuplicateJobException; import org.springframework.batch.core.configuration.JobFactory; import org.springframework.batch.core.configuration.support.MapJobRegistry; import org.springframework.batch.core.configuration.support.ReferenceJobFactory; import org.springframework.batch.core.job.JobSupport; -import org.springframework.batch.core.repository.DuplicateJobException; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; /** * @author Dave Syer diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/OsgiBundleXmlApplicationContextFactoryTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/OsgiBundleXmlApplicationContextFactoryTests.java new file mode 100644 index 000000000..9cc02bfb2 --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/OsgiBundleXmlApplicationContextFactoryTests.java @@ -0,0 +1,61 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.configuration.support; + +import static org.easymock.EasyMock.createMock; +import static org.easymock.EasyMock.createNiceMock; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; +import static org.easymock.EasyMock.verify; + +import org.junit.Test; +import org.osgi.framework.Bundle; +import org.osgi.framework.BundleContext; +import org.springframework.util.ClassUtils; + +/** + * @author Dave Syer + * + */ +public class OsgiBundleXmlApplicationContextFactoryTests { + + private OsgiBundleXmlApplicationContextFactory factory = new OsgiBundleXmlApplicationContextFactory(); + + /** + * Test method for {@link org.springframework.batch.core.configuration.support.OsgiBundleXmlApplicationContextFactory#setDisplayName(java.lang.String)}. + */ + @Test + public void testSetDisplayName() { + factory.setDisplayName("foo"); + factory.setPath("classpath:"+ClassUtils.addResourcePathToPackagePath(getClass(), "trivial-context.xml")); + BundleContext bundleContext = createMock(BundleContext.class); + Bundle bundle = createNiceMock(Bundle.class); + expect(bundleContext.getBundle()).andReturn(bundle).anyTimes(); + replay(bundleContext, bundle); + factory.setBundleContext(bundleContext); + // TODO: finish this... + // factory.createApplicationContext(); + verify(bundleContext, bundle); + } + + /** + * Test method for {@link org.springframework.batch.core.configuration.support.OsgiBundleXmlApplicationContextFactory#setApplicationContext(org.springframework.context.ApplicationContext)}. + */ + @Test + public void testSetApplicationContext() { + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobExecutionNotFailedExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobExecutionNotFailedExceptionTests.java new file mode 100644 index 000000000..a10abca34 --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobExecutionNotFailedExceptionTests.java @@ -0,0 +1,40 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.launch; + +import org.springframework.batch.core.AbstractExceptionTests; + +/** + * @author Dave Syer + * + */ +public class JobExecutionNotFailedExceptionTests extends AbstractExceptionTests { + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String) + */ + public Exception getException(String msg) throws Exception { + return new JobExecutionNotFailedException(msg); + } + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String, java.lang.Throwable) + */ + public Exception getException(String msg, Throwable t) throws Exception { + return new JobExecutionNotFailedException(msg, t); + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsExceptionTests.java new file mode 100644 index 000000000..c41fb89e4 --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobInstanceAlreadyExistsExceptionTests.java @@ -0,0 +1,41 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.launch; + +import org.springframework.batch.core.AbstractExceptionTests; +import org.springframework.batch.core.launch.JobInstanceAlreadyExistsException; + +/** + * @author Dave Syer + * + */ +public class JobInstanceAlreadyExistsExceptionTests extends AbstractExceptionTests { + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String) + */ + public Exception getException(String msg) throws Exception { + return new JobInstanceAlreadyExistsException(msg); + } + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String, java.lang.Throwable) + */ + public Exception getException(String msg, Throwable t) throws Exception { + return new JobInstanceAlreadyExistsException(msg, t); + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobParametersIncrementerNotFoundExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobParametersIncrementerNotFoundExceptionTests.java new file mode 100644 index 000000000..88b3f2a39 --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/JobParametersIncrementerNotFoundExceptionTests.java @@ -0,0 +1,40 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.launch; + +import org.springframework.batch.core.AbstractExceptionTests; + +/** + * @author Dave Syer + * + */ +public class JobParametersIncrementerNotFoundExceptionTests extends AbstractExceptionTests { + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String) + */ + public Exception getException(String msg) throws Exception { + return new JobParametersIncrementerNotFoundException(msg); + } + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String, java.lang.Throwable) + */ + public Exception getException(String msg, Throwable t) throws Exception { + return new JobParametersIncrementerNotFoundException(msg, t); + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/NoSuchJobExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExceptionTests.java similarity index 91% rename from spring-batch-core/src/test/java/org/springframework/batch/core/repository/NoSuchJobExceptionTests.java rename to spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExceptionTests.java index d3c5b7f24..e0c0cb947 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/NoSuchJobExceptionTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExceptionTests.java @@ -13,10 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.batch.core.repository; +package org.springframework.batch.core.launch; import org.springframework.batch.core.AbstractExceptionTests; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; /** * @author Dave Syer diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExecutionExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExecutionExceptionTests.java new file mode 100644 index 000000000..13d4632eb --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobExecutionExceptionTests.java @@ -0,0 +1,41 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.launch; + +import org.springframework.batch.core.AbstractExceptionTests; +import org.springframework.batch.core.launch.NoSuchJobExecutionException; + +/** + * @author Dave Syer + * + */ +public class NoSuchJobExecutionExceptionTests extends AbstractExceptionTests { + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String) + */ + public Exception getException(String msg) throws Exception { + return new NoSuchJobExecutionException(msg); + } + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String, java.lang.Throwable) + */ + public Exception getException(String msg, Throwable t) throws Exception { + return new NoSuchJobExecutionException(msg, t); + } + +} diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobInstanceExceptionTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobInstanceExceptionTests.java new file mode 100644 index 000000000..708fa313d --- /dev/null +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/NoSuchJobInstanceExceptionTests.java @@ -0,0 +1,41 @@ +/* + * Copyright 2006-2007 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.batch.core.launch; + +import org.springframework.batch.core.AbstractExceptionTests; +import org.springframework.batch.core.launch.NoSuchJobInstanceException; + +/** + * @author Dave Syer + * + */ +public class NoSuchJobInstanceExceptionTests extends AbstractExceptionTests { + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String) + */ + public Exception getException(String msg) throws Exception { + return new NoSuchJobInstanceException(msg); + } + + /* (non-Javadoc) + * @see org.springframework.batch.io.exception.AbstractExceptionTests#getException(java.lang.String, java.lang.Throwable) + */ + public Exception getException(String msg, Throwable t) throws Exception { + return new NoSuchJobInstanceException(msg, t); + } + +} diff --git a/spring-batch-samples/src/main/java/org/springframework/batch/sample/launch/DefaultJobLoader.java b/spring-batch-samples/src/main/java/org/springframework/batch/sample/launch/DefaultJobLoader.java index 50d167796..2f362ea4a 100644 --- a/spring-batch-samples/src/main/java/org/springframework/batch/sample/launch/DefaultJobLoader.java +++ b/spring-batch-samples/src/main/java/org/springframework/batch/sample/launch/DefaultJobLoader.java @@ -8,7 +8,7 @@ import java.util.Map; import org.springframework.batch.core.Job; import org.springframework.batch.core.configuration.ListableJobRegistry; -import org.springframework.batch.core.repository.NoSuchJobException; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.beans.BeanWrapperImpl; import org.springframework.beans.BeansException; import org.springframework.beans.PropertyAccessorUtils; diff --git a/spring-batch-samples/src/test/java/org/springframework/batch/sample/quartz/JobLauncherDetailsTests.java b/spring-batch-samples/src/test/java/org/springframework/batch/sample/quartz/JobLauncherDetailsTests.java index c9b3f2f8f..2f9228df1 100644 --- a/spring-batch-samples/src/test/java/org/springframework/batch/sample/quartz/JobLauncherDetailsTests.java +++ b/spring-batch-samples/src/test/java/org/springframework/batch/sample/quartz/JobLauncherDetailsTests.java @@ -35,9 +35,9 @@ import org.springframework.batch.core.JobExecution; import org.springframework.batch.core.JobParameters; import org.springframework.batch.core.configuration.JobLocator; import org.springframework.batch.core.launch.JobLauncher; +import org.springframework.batch.core.launch.NoSuchJobException; import org.springframework.batch.core.repository.JobExecutionAlreadyRunningException; import org.springframework.batch.core.repository.JobRestartException; -import org.springframework.batch.core.repository.NoSuchJobException; import org.springframework.batch.sample.support.JobSupport; /**