IN PROGRESS - issue BATCH-212: Merge InputSource with ItemProvider
http://opensource.atlassian.com/projects/spring/browse/BATCH-212 Merge InputSource/ItemProvider -> ItemReader.
This commit is contained in:
@@ -25,12 +25,12 @@ import java.util.Set;
|
||||
import org.springframework.batch.core.tasklet.Tasklet;
|
||||
import org.springframework.batch.io.Skippable;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.repeat.ExitStatus;
|
||||
import org.springframework.batch.retry.RetryPolicy;
|
||||
import org.springframework.batch.retry.callback.ItemProviderRetryCallback;
|
||||
import org.springframework.batch.retry.policy.ItemProviderRetryPolicy;
|
||||
import org.springframework.batch.retry.callback.ItemReaderRetryCallback;
|
||||
import org.springframework.batch.retry.policy.ItemReaderRetryPolicy;
|
||||
import org.springframework.batch.retry.support.RetryTemplate;
|
||||
import org.springframework.batch.statistics.StatisticsProvider;
|
||||
import org.springframework.beans.factory.InitializingBean;
|
||||
@@ -42,7 +42,7 @@ import org.springframework.util.Assert;
|
||||
* the reading and processing of batch data into two separate classes:
|
||||
* ItemProvider and ItemProcessor. The ItemProvider class provides a solid means
|
||||
* for re-usability and enforces good architecture practices. Because an object
|
||||
* <em>must</em> be returned by the {@link ItemProvider} to continue
|
||||
* <em>must</em> be returned by the {@link ItemReader} to continue
|
||||
* processing, (returning null indicates processing should end) a developer is
|
||||
* forced to read in all relevant data, place it into a domain object, and
|
||||
* return that object. The {@link ItemProcessor} will then use this object for
|
||||
@@ -50,12 +50,12 @@ import org.springframework.util.Assert;
|
||||
*
|
||||
* If a {@link RetryPolicy} is provided it will be used to construct a stateful
|
||||
* retry around the {@link ItemProcessor}, delegating identity concerns to the
|
||||
* {@link ItemProvider} and recovery concerns to the {@link ItemRecoverer} (if
|
||||
* {@link ItemReader} and recovery concerns to the {@link ItemRecoverer} (if
|
||||
* present). In this case clients of this class do not need to take any
|
||||
* additional action at runtime to take advantage of the retry and recovery,
|
||||
* provided that when the {@link #execute()} method is called again the same
|
||||
* item is eventually re-presented (normally this would be the case because a
|
||||
* transaction would have rolled back and the {@link ItemProvider} would go back
|
||||
* transaction would have rolled back and the {@link ItemReader} would go back
|
||||
* to its previous state).<br/>
|
||||
*
|
||||
* If a {@link RetryPolicy} is not provided then the {@link ItemRecoverer} can
|
||||
@@ -65,7 +65,7 @@ import org.springframework.util.Assert;
|
||||
* can be achieved by injecting an {@link ItemRecoverer} that has a
|
||||
* transactional recover method.
|
||||
*
|
||||
* @see ItemProvider
|
||||
* @see ItemReader
|
||||
* @see ItemProcessor
|
||||
* @see RetryPolicy
|
||||
* @see Recoverable
|
||||
@@ -75,7 +75,7 @@ import org.springframework.util.Assert;
|
||||
* @author Robert Kasanicky
|
||||
*
|
||||
*/
|
||||
public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
public class ItemOrientedTasklet implements Tasklet, Skippable,
|
||||
StatisticsProvider, InitializingBean {
|
||||
|
||||
/**
|
||||
@@ -92,7 +92,7 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
|
||||
private RetryPolicy retryPolicy = null;
|
||||
|
||||
protected ItemProvider itemProvider;
|
||||
protected ItemReader itemProvider;
|
||||
|
||||
protected ItemProcessor itemProcessor;
|
||||
|
||||
@@ -100,7 +100,7 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
|
||||
private RetryTemplate template = new RetryTemplate();
|
||||
|
||||
private ItemProviderRetryCallback retryCallback;
|
||||
private ItemReaderRetryCallback retryCallback;
|
||||
|
||||
/**
|
||||
* Check mandatory properties (provider and processor).
|
||||
@@ -115,12 +115,12 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
itemRecoverer = (ItemRecoverer) itemProvider;
|
||||
}
|
||||
|
||||
ItemProviderRetryPolicy itemProviderRetryPolicy = new ItemProviderRetryPolicy(
|
||||
ItemReaderRetryPolicy itemProviderRetryPolicy = new ItemReaderRetryPolicy(
|
||||
retryPolicy);
|
||||
template.setRetryPolicy(itemProviderRetryPolicy);
|
||||
|
||||
if (retryPolicy != null) {
|
||||
retryCallback = new ItemProviderRetryCallback(itemProvider,
|
||||
retryCallback = new ItemReaderRetryCallback(itemProvider,
|
||||
itemProcessor);
|
||||
retryCallback.setRecoverer(itemRecoverer);
|
||||
}
|
||||
@@ -128,7 +128,7 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
}
|
||||
|
||||
/**
|
||||
* Read from the {@link ItemProvider} and process (if not null) with the
|
||||
* Read from the {@link ItemReader} and process (if not null) with the
|
||||
* {@link ItemProcessor}. The call to {@link ItemProcessor} is wrapped in a
|
||||
* stateful retry, if a {@link RetryPolicy} is provided. The
|
||||
* {@link ItemRecoverer} is used (if provided) in the case of an exception
|
||||
@@ -144,7 +144,7 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
public ExitStatus execute() throws Exception {
|
||||
|
||||
if (retryCallback == null) {
|
||||
Object item = itemProvider.next();
|
||||
Object item = itemProvider.read();
|
||||
if (item == null) {
|
||||
return ExitStatus.FINISHED;
|
||||
}
|
||||
@@ -168,7 +168,7 @@ public class ItemProviderProcessTasklet implements Tasklet, Skippable,
|
||||
/**
|
||||
* @param itemProvider
|
||||
*/
|
||||
public void setItemProvider(ItemProvider itemProvider) {
|
||||
public void setItemProvider(ItemReader itemProvider) {
|
||||
this.itemProvider = itemProvider;
|
||||
}
|
||||
|
||||
@@ -19,17 +19,17 @@ package org.springframework.batch.execution.tasklet;
|
||||
import java.util.Properties;
|
||||
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.restart.GenericRestartData;
|
||||
import org.springframework.batch.restart.RestartData;
|
||||
import org.springframework.batch.restart.Restartable;
|
||||
import org.springframework.batch.support.PropertiesConverter;
|
||||
|
||||
/**
|
||||
* An extension of {@link ItemProviderProcessTasklet} that delegates calls to
|
||||
* An extension of {@link ItemOrientedTasklet} that delegates calls to
|
||||
* {@link Restartable} to the provider and processor.
|
||||
*
|
||||
* @see ItemProvider
|
||||
* @see ItemReader
|
||||
* @see ItemProcessor
|
||||
* @see Restartable
|
||||
*
|
||||
@@ -37,7 +37,7 @@ import org.springframework.batch.support.PropertiesConverter;
|
||||
* @author Dave Syer
|
||||
*
|
||||
*/
|
||||
public class RestartableItemProviderTasklet extends ItemProviderProcessTasklet implements Restartable {
|
||||
public class RestartableItemOrientedTasklet extends ItemOrientedTasklet implements Restartable {
|
||||
|
||||
/**
|
||||
* @see Restartable#getRestartData()
|
||||
@@ -55,7 +55,7 @@ public class RestartableItemProviderTasklet extends ItemProviderProcessTasklet i
|
||||
itemProcessorRestartData = ((Restartable) itemProcessor).getRestartData();
|
||||
}
|
||||
|
||||
RestartableItemProviderTaskletRestartData restartData = new RestartableItemProviderTaskletRestartData(itemProviderRestartData, itemProcessorRestartData);
|
||||
RestartableItemOrientedTaskletRestartData restartData = new RestartableItemOrientedTaskletRestartData(itemProviderRestartData, itemProcessorRestartData);
|
||||
|
||||
return restartData;
|
||||
}
|
||||
@@ -67,13 +67,13 @@ public class RestartableItemProviderTasklet extends ItemProviderProcessTasklet i
|
||||
if (data == null || data.getProperties() == null)
|
||||
return;
|
||||
|
||||
RestartableItemProviderTaskletRestartData moduleRestartData;
|
||||
RestartableItemOrientedTaskletRestartData moduleRestartData;
|
||||
|
||||
if (data instanceof RestartableItemProviderTaskletRestartData) {
|
||||
moduleRestartData = (RestartableItemProviderTaskletRestartData) data;
|
||||
if (data instanceof RestartableItemOrientedTaskletRestartData) {
|
||||
moduleRestartData = (RestartableItemOrientedTaskletRestartData) data;
|
||||
}
|
||||
else {
|
||||
moduleRestartData = new RestartableItemProviderTaskletRestartData(data.getProperties());
|
||||
moduleRestartData = new RestartableItemOrientedTaskletRestartData(data.getProperties());
|
||||
}
|
||||
|
||||
if (itemProvider instanceof Restartable) {
|
||||
@@ -84,7 +84,7 @@ public class RestartableItemProviderTasklet extends ItemProviderProcessTasklet i
|
||||
}
|
||||
}
|
||||
|
||||
private class RestartableItemProviderTaskletRestartData implements RestartData {
|
||||
private class RestartableItemOrientedTaskletRestartData implements RestartData {
|
||||
|
||||
private static final String PROVIDER_KEY = "DATA_PROVIDER";
|
||||
|
||||
@@ -94,12 +94,12 @@ public class RestartableItemProviderTasklet extends ItemProviderProcessTasklet i
|
||||
|
||||
RestartData processorData;
|
||||
|
||||
public RestartableItemProviderTaskletRestartData(RestartData providerData, RestartData processorData) {
|
||||
public RestartableItemOrientedTaskletRestartData(RestartData providerData, RestartData processorData) {
|
||||
this.providerData = providerData;
|
||||
this.processorData = processorData;
|
||||
}
|
||||
|
||||
public RestartableItemProviderTaskletRestartData(Properties data) {
|
||||
public RestartableItemOrientedTaskletRestartData(Properties data) {
|
||||
providerData = new GenericRestartData(PropertiesConverter
|
||||
.stringToProperties(data.getProperty(PROVIDER_KEY)));
|
||||
processorData = new GenericRestartData(PropertiesConverter.stringToProperties(data
|
||||
@@ -39,11 +39,11 @@ import org.springframework.batch.execution.repository.dao.MapStepDao;
|
||||
import org.springframework.batch.execution.runtime.ScheduledJobIdentifierFactory;
|
||||
import org.springframework.batch.execution.step.SimpleStepConfiguration;
|
||||
import org.springframework.batch.execution.step.simple.SimpleStepExecutor;
|
||||
import org.springframework.batch.execution.tasklet.ItemProviderProcessTasklet;
|
||||
import org.springframework.batch.execution.tasklet.ItemOrientedTasklet;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.item.provider.ListItemProvider;
|
||||
import org.springframework.batch.item.provider.ListItemReader;
|
||||
import org.springframework.batch.repeat.RepeatContext;
|
||||
import org.springframework.batch.repeat.exception.handler.ExceptionHandler;
|
||||
import org.springframework.batch.repeat.support.RepeatTemplate;
|
||||
@@ -67,7 +67,7 @@ public class SimpleJobTests extends TestCase {
|
||||
}
|
||||
};
|
||||
|
||||
private ItemProvider provider;
|
||||
private ItemReader provider;
|
||||
|
||||
private DefaultJobExecutor jobExecutor = new DefaultJobExecutor();;
|
||||
|
||||
@@ -92,11 +92,11 @@ public class SimpleJobTests extends TestCase {
|
||||
return getTasklet(new String[] { arg0, arg1 });
|
||||
}
|
||||
|
||||
private ItemProviderProcessTasklet getTasklet(String[] args) throws Exception {
|
||||
ItemProviderProcessTasklet module = new ItemProviderProcessTasklet();
|
||||
private ItemOrientedTasklet getTasklet(String[] args) throws Exception {
|
||||
ItemOrientedTasklet module = new ItemOrientedTasklet();
|
||||
List items = TransactionAwareProxyFactory.createTransactionalList();
|
||||
items.addAll(Arrays.asList(args));
|
||||
provider = new ListItemProvider(items);
|
||||
provider = new ListItemReader(items);
|
||||
module.setItemRecoverer(new ItemRecoverer() {
|
||||
public boolean recover(Object item, Throwable cause) {
|
||||
recovered.add(item);
|
||||
@@ -161,7 +161,7 @@ public class SimpleJobTests extends TestCase {
|
||||
* is recovered ("skipped") on the second attempt (see retry policy
|
||||
* definition above)...
|
||||
*/
|
||||
final ItemProviderProcessTasklet module = getTasklet(new String[] { "foo", "bar", "spam" });
|
||||
final ItemOrientedTasklet module = getTasklet(new String[] { "foo", "bar", "spam" });
|
||||
StepConfiguration step = new SimpleStepConfiguration(module);
|
||||
module.setItemProcessor(new ItemProcessor() {
|
||||
public void process(Object data) throws Exception {
|
||||
@@ -177,7 +177,7 @@ public class SimpleJobTests extends TestCase {
|
||||
assertEquals(BatchStatus.COMPLETED, jobExecution.getJob().getStatus());
|
||||
assertEquals(0, processed.size());
|
||||
// provider should be exhausted
|
||||
assertEquals(null, provider.next());
|
||||
assertEquals(null, provider.read());
|
||||
assertEquals(3, recovered.size());
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ public class SimpleJobTests extends TestCase {
|
||||
|
||||
JobConfiguration jobConfiguration = new JobConfiguration();
|
||||
JobIdentifier runtimeInformation = new SimpleJobIdentifier("real.job");
|
||||
final ItemProviderProcessTasklet module = getTasklet(new String[] { "foo", "bar", "spam" });
|
||||
final ItemOrientedTasklet module = getTasklet(new String[] { "foo", "bar", "spam" });
|
||||
StepConfiguration step = new SimpleStepConfiguration(module);
|
||||
module.setItemProcessor(new ItemProcessor() {
|
||||
public void process(Object data) throws Exception {
|
||||
|
||||
@@ -36,10 +36,10 @@ import org.springframework.batch.execution.repository.dao.MapStepDao;
|
||||
import org.springframework.batch.execution.scope.StepScope;
|
||||
import org.springframework.batch.execution.scope.StepSynchronizationManager;
|
||||
import org.springframework.batch.execution.step.SimpleStepConfiguration;
|
||||
import org.springframework.batch.execution.tasklet.ItemProviderProcessTasklet;
|
||||
import org.springframework.batch.execution.tasklet.ItemOrientedTasklet;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.provider.ListItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.provider.ListItemReader;
|
||||
import org.springframework.batch.repeat.ExitStatus;
|
||||
import org.springframework.batch.repeat.RepeatContext;
|
||||
import org.springframework.batch.repeat.exception.handler.DefaultExceptionHandler;
|
||||
@@ -66,8 +66,8 @@ public class DefaultStepExecutorTests extends TestCase {
|
||||
|
||||
private RepeatTemplate template;
|
||||
|
||||
private ItemProvider getProvider(String[] args) {
|
||||
return new ListItemProvider(Arrays.asList(args));
|
||||
private ItemReader getProvider(String[] args) {
|
||||
return new ListItemReader(Arrays.asList(args));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -76,7 +76,7 @@ public class DefaultStepExecutorTests extends TestCase {
|
||||
* @throws Exception
|
||||
*/
|
||||
private Tasklet getTasklet(String[] strings) throws Exception {
|
||||
ItemProviderProcessTasklet module = new ItemProviderProcessTasklet();
|
||||
ItemOrientedTasklet module = new ItemOrientedTasklet();
|
||||
module.setItemProcessor(processor);
|
||||
module.setItemProvider(getProvider(strings));
|
||||
module.afterPropertiesSet();
|
||||
|
||||
@@ -25,9 +25,9 @@ import junit.framework.TestCase;
|
||||
|
||||
import org.springframework.batch.io.Skippable;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.item.provider.AbstractItemProvider;
|
||||
import org.springframework.batch.item.provider.AbstractItemReader;
|
||||
import org.springframework.batch.repeat.context.RepeatContextSupport;
|
||||
import org.springframework.batch.repeat.synch.RepeatSynchronizationManager;
|
||||
import org.springframework.batch.retry.policy.SimpleRetryPolicy;
|
||||
@@ -38,16 +38,16 @@ import org.springframework.batch.support.PropertiesConverter;
|
||||
* @author Dave Syer
|
||||
* @author Peter Zozom
|
||||
*/
|
||||
public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
public class ItemOrientedTaskletTests extends TestCase {
|
||||
|
||||
private List list = new ArrayList();
|
||||
|
||||
private List items = new ArrayList();
|
||||
|
||||
private ItemProvider itemProvider = new AbstractItemProvider() {
|
||||
private ItemReader itemProvider = new AbstractItemReader() {
|
||||
int count = 0;
|
||||
|
||||
public Object next() throws Exception {
|
||||
public Object read() throws Exception {
|
||||
if (count < items.size()) {
|
||||
Object data = items.get(count++);
|
||||
if (data instanceof Exception) {
|
||||
@@ -65,12 +65,12 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
};
|
||||
|
||||
private ItemProviderProcessTasklet module;
|
||||
private ItemOrientedTasklet module;
|
||||
|
||||
public void setUp() throws Exception {
|
||||
|
||||
// create module
|
||||
module = new ItemProviderProcessTasklet();
|
||||
module = new ItemOrientedTasklet();
|
||||
|
||||
// set up module
|
||||
module.setItemProvider(itemProvider);
|
||||
@@ -144,15 +144,15 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
}
|
||||
|
||||
public void testSkippableProvider() throws Exception {
|
||||
module.setItemProvider(new SkippableItemProvider());
|
||||
public void testSkippableReader() throws Exception {
|
||||
module.setItemProvider(new SkippableItemReader());
|
||||
module.setItemRecoverer(null);
|
||||
module.skip();
|
||||
assertEquals(1, list.size());
|
||||
}
|
||||
|
||||
public void testSkippablProviderProcessor() throws Exception {
|
||||
module.setItemProvider(new SkippableItemProvider());
|
||||
public void testSkippablReaderProcessor() throws Exception {
|
||||
module.setItemProvider(new SkippableItemReader());
|
||||
module.setItemProcessor(new SkippableItemProcessor());
|
||||
module.setItemRecoverer(null);
|
||||
module.skip();
|
||||
@@ -160,7 +160,7 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
|
||||
public void testStatisticsProvider() throws Exception {
|
||||
module.setItemProvider(new SkippableItemProvider());
|
||||
module.setItemProvider(new SkippableItemReader());
|
||||
Properties stats = module.getStatistics();
|
||||
assertEquals(1, stats.size());
|
||||
assertEquals("bar", stats.getProperty("foo"));
|
||||
@@ -174,7 +174,7 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
|
||||
public void testStatisticsProviderProcessor() throws Exception {
|
||||
module.setItemProvider(new SkippableItemProvider());
|
||||
module.setItemProvider(new SkippableItemReader());
|
||||
module.setItemProcessor(new SkippableItemProcessor());
|
||||
Properties stats = module.getStatistics();
|
||||
assertEquals(2, stats.size());
|
||||
@@ -184,7 +184,7 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
|
||||
public void testStatisticsProviderProcessorMergeDuplicates()
|
||||
throws Exception {
|
||||
module.setItemProvider(new SkippableItemProvider());
|
||||
module.setItemProvider(new SkippableItemReader());
|
||||
module.setItemProcessor(new SkippableItemProcessor(
|
||||
"foo=bar\nspam=bucket"));
|
||||
Properties stats = module.getStatistics();
|
||||
@@ -207,8 +207,8 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
});
|
||||
|
||||
module.setItemProvider(new AbstractItemProvider() {
|
||||
public Object next() throws Exception {
|
||||
module.setItemProvider(new AbstractItemReader() {
|
||||
public Object read() throws Exception {
|
||||
return "bar";
|
||||
}
|
||||
});
|
||||
@@ -245,8 +245,8 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
module.setItemProvider(new AbstractItemProvider() {
|
||||
public Object next() throws Exception {
|
||||
module.setItemProvider(new AbstractItemReader() {
|
||||
public Object read() throws Exception {
|
||||
return "foo";
|
||||
}
|
||||
});
|
||||
@@ -295,10 +295,10 @@ public class ItemProviderProcessTaskletTests extends TestCase {
|
||||
}
|
||||
}
|
||||
|
||||
private class SkippableItemProvider implements ItemProvider,
|
||||
private class SkippableItemReader implements ItemReader,
|
||||
Skippable, StatisticsProvider {
|
||||
public Object next() throws Exception {
|
||||
return itemProvider.next();
|
||||
public Object read() throws Exception {
|
||||
return itemProvider.read();
|
||||
}
|
||||
public Object getKey(Object item) {
|
||||
return item;
|
||||
@@ -20,9 +20,9 @@ import java.util.Properties;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.springframework.batch.execution.tasklet.RestartableItemProviderTasklet;
|
||||
import org.springframework.batch.execution.tasklet.RestartableItemOrientedTasklet;
|
||||
import org.springframework.batch.item.ItemProcessor;
|
||||
import org.springframework.batch.item.ItemProvider;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.restart.GenericRestartData;
|
||||
import org.springframework.batch.restart.RestartData;
|
||||
import org.springframework.batch.restart.Restartable;
|
||||
@@ -31,9 +31,9 @@ import org.springframework.batch.support.PropertiesConverter;
|
||||
/**
|
||||
* @author Peter Zozom
|
||||
*/
|
||||
public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
public class RestartableItemOrientedTaskletTests extends TestCase {
|
||||
|
||||
private static class MockProvider implements ItemProvider, Restartable {
|
||||
private static class MockProvider implements ItemReader, Restartable {
|
||||
|
||||
RestartData data = new RestartData() {
|
||||
|
||||
@@ -43,7 +43,7 @@ public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
|
||||
};
|
||||
|
||||
public Object next() {
|
||||
public Object read() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -88,11 +88,11 @@ public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
|
||||
}
|
||||
|
||||
private ItemProvider itemProvider;
|
||||
private ItemReader itemProvider;
|
||||
|
||||
private ItemProcessor itemProcessor;
|
||||
|
||||
private RestartableItemProviderTasklet module;
|
||||
private RestartableItemOrientedTasklet module;
|
||||
|
||||
public void testRestart() {
|
||||
|
||||
@@ -101,7 +101,7 @@ public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
itemProcessor = new MockProcessor();
|
||||
|
||||
// create and set up module
|
||||
module = new RestartableItemProviderTasklet();
|
||||
module = new RestartableItemOrientedTasklet();
|
||||
module.setItemProvider(itemProvider);
|
||||
module.setItemProcessor(itemProcessor);
|
||||
|
||||
@@ -119,7 +119,7 @@ public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
itemProcessor = new MockProcessor();
|
||||
|
||||
// create and set up module
|
||||
module = new RestartableItemProviderTasklet();
|
||||
module = new RestartableItemOrientedTasklet();
|
||||
module.setItemProvider(itemProvider);
|
||||
module.setItemProcessor(itemProcessor);
|
||||
|
||||
@@ -134,7 +134,7 @@ public class RestartableItemProviderTaskletTests extends TestCase {
|
||||
public void testRestartFromNotRestartable() {
|
||||
|
||||
// create and set up module
|
||||
module = new RestartableItemProviderTasklet();
|
||||
module = new RestartableItemOrientedTasklet();
|
||||
module.setItemProvider(null);
|
||||
module.setItemProcessor(null);
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
<bean id="step1" class="org.springframework.batch.execution.step.SimpleStepConfiguration">
|
||||
<constructor-arg>
|
||||
<bean
|
||||
class="org.springframework.batch.execution.tasklet.ItemProviderProcessTasklet">
|
||||
class="org.springframework.batch.execution.tasklet.ItemOrientedTasklet">
|
||||
<property name="itemProvider">
|
||||
<bean
|
||||
class="org.springframework.batch.item.provider.ListItemProvider">
|
||||
class="org.springframework.batch.item.provider.ListItemReader">
|
||||
<constructor-arg value="foo,bar,spam"/>
|
||||
</bean>
|
||||
</property>
|
||||
|
||||
@@ -18,10 +18,10 @@
|
||||
<bean id="step1" class="org.springframework.batch.execution.step.SimpleStepConfiguration">
|
||||
<constructor-arg>
|
||||
<bean
|
||||
class="org.springframework.batch.execution.tasklet.ItemProviderProcessTasklet">
|
||||
class="org.springframework.batch.execution.tasklet.ItemOrientedTasklet">
|
||||
<property name="itemProvider">
|
||||
<bean
|
||||
class="org.springframework.batch.item.provider.ListItemProvider">
|
||||
class="org.springframework.batch.item.provider.ListItemReader">
|
||||
<constructor-arg value="foo,bar,spam"/>
|
||||
</bean>
|
||||
</property>
|
||||
|
||||
Reference in New Issue
Block a user