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:
dsyer
2007-12-17 13:13:39 +00:00
parent ddc4a48de1
commit ab98d1ebe6
107 changed files with 828 additions and 826 deletions

View File

@@ -21,7 +21,7 @@ import java.io.FileReader;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.batch.io.file.support.DefaultFlatFileInputSource;
import org.springframework.batch.io.file.support.DefaultFlatFileItemReader;
import org.springframework.batch.sample.domain.Trade;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.core.JdbcOperations;
@@ -35,7 +35,7 @@ public class FixedLengthImportJobFunctionalTests extends AbstractValidatingBatch
//auto-injected attributes
private JdbcOperations jdbcTemplate;
private Resource fileLocator;
private DefaultFlatFileInputSource inputSource;
private DefaultFlatFileItemReader inputSource;
protected void onSetUp() throws Exception {
super.onSetUp();
@@ -89,7 +89,7 @@ public class FixedLengthImportJobFunctionalTests extends AbstractValidatingBatch
this.fileLocator = fileLocator;
}
public void setDefaultFlatFileInputSource(DefaultFlatFileInputSource inputSource){
public void setDefaultFlatFileItemReader(DefaultFlatFileItemReader inputSource){
this.inputSource = inputSource;
}
}

View File

@@ -5,9 +5,9 @@ import java.util.Iterator;
import junit.framework.TestCase;
import org.easymock.MockControl;
import org.springframework.batch.io.InputSource;
import org.springframework.batch.io.file.FieldSet;
import org.springframework.batch.io.file.FieldSetMapper;
import org.springframework.batch.item.ItemReader;
import org.springframework.batch.item.validator.Validator;
import org.springframework.batch.sample.domain.Address;
import org.springframework.batch.sample.domain.BillingInfo;
@@ -15,13 +15,12 @@ import org.springframework.batch.sample.domain.Customer;
import org.springframework.batch.sample.domain.LineItem;
import org.springframework.batch.sample.domain.Order;
import org.springframework.batch.sample.domain.ShippingInfo;
import org.springframework.batch.sample.item.provider.OrderItemProvider;
public class OrderItemProviderTests extends TestCase {
public class OrderItemReaderTests extends TestCase {
private OrderItemProvider provider;
private OrderItemReader provider;
private MockControl inputControl;
private InputSource input;
private ItemReader input;
private MockControl mapperControl;
private FieldSetMapper mapper;
private MockControl validatorControl;
@@ -29,11 +28,11 @@ public class OrderItemProviderTests extends TestCase {
public void setUp() {
inputControl = MockControl.createControl(InputSource.class);
input = (InputSource)inputControl.getMock();
inputControl = MockControl.createControl(ItemReader.class);
input = (ItemReader)inputControl.getMock();
provider = new OrderItemProvider();
provider.setInputSource(input);
provider = new OrderItemReader();
provider.setItemReader(input);
}
/*
@@ -47,7 +46,7 @@ public class OrderItemProviderTests extends TestCase {
* In testNext method we are going to test these responsibilities. So we need create mock
* objects for input source, mapper and validator.
*/
public void testNext() {
public void testNext() throws Exception {
//create fieldsets and set return values for input source
FieldSet headerFS = new FieldSet(new String[] {Order.LINE_ID_HEADER});
@@ -127,7 +126,7 @@ public class OrderItemProviderTests extends TestCase {
provider.setShippingMapper(mapper);
//call tested method
Object result = provider.next();
Object result = provider.read();
//verify result
assertNotNull(result);
@@ -152,7 +151,7 @@ public class OrderItemProviderTests extends TestCase {
}
//try to retrieve next object - nothing should be returned
assertNull(provider.next());
assertNull(provider.read());
//verify method calls on input source, mapper and validator
inputControl.verify();

View File

@@ -14,18 +14,18 @@ import org.springframework.batch.sample.item.processor.StagingItemProcessor;
import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;
import org.springframework.util.ClassUtils;
public class StagingItemProviderTests extends
public class StagingItemReaderTests extends
AbstractTransactionalDataSourceSpringContextTests {
private StagingItemProcessor processor;
private StagingItemProvider provider;
private StagingItemReader provider;
private Long jobId;
public void setProcessor(StagingItemProcessor processor) {
this.processor = processor;
}
public void setProvider(StagingItemProvider provider) {
public void setProvider(StagingItemReader provider) {
this.provider = provider;
}
@@ -66,7 +66,7 @@ public class StagingItemProviderTests extends
new Object[] { new Long(id) }, String.class);
assertEquals(StagingItemProcessor.NEW, before);
Object item = provider.next();
Object item = provider.read();
assertEquals("FOO", item);
String after = (String) getJdbcTemplate().queryForObject(
@@ -103,27 +103,27 @@ public class StagingItemProviderTests extends
new Object[] { jobId, StagingItemProcessor.NEW });
assertEquals(4, count);
Object item = provider.next();
Object item = provider.read();
assertEquals("FOO", item);
item = provider.next();
item = provider.read();
assertEquals("BAR", item);
endTransaction();
startNewTransaction();
BatchTransactionSynchronizationManager.resynchronize();
item = provider.next();
item = provider.read();
assertEquals("FOO", item);
item = provider.next();
item = provider.read();
assertEquals("BAR", item);
item = provider.next();
item = provider.read();
assertEquals("SPAM", item);
endTransaction();
startNewTransaction();
BatchTransactionSynchronizationManager.resynchronize();
item = provider.next();
item = provider.read();
assertEquals("FOO", item);
}
@@ -144,7 +144,7 @@ public class StagingItemProviderTests extends
new Object[] { new Long(id) }, String.class);
assertEquals(StagingItemProcessor.NEW, before);
Object item = provider.next();
Object item = provider.read();
assertEquals("FOO", item);
endTransaction();
@@ -157,7 +157,7 @@ public class StagingItemProviderTests extends
new Object[] { new Long(id) }, String.class);
assertEquals(StagingItemProcessor.NEW, after);
item = provider.next();
item = provider.read();
assertEquals("FOO", item);
}
}

View File

@@ -7,7 +7,7 @@ import junit.framework.TestCase;
import org.easymock.MockControl;
import org.springframework.batch.io.exception.BatchCriticalException;
import org.springframework.batch.item.ItemProcessor;
import org.springframework.batch.item.provider.ListItemProvider;
import org.springframework.batch.item.provider.ListItemReader;
import org.springframework.batch.repeat.context.RepeatContextSupport;
import org.springframework.batch.repeat.synch.RepeatSynchronizationManager;
import org.springframework.batch.sample.tasklet.ExceptionRestartableTasklet;
@@ -38,7 +38,7 @@ public class ExceptionRestartableTaskletTests extends TestCase {
module.setItemProcessor(itemProcessor);
module.setThrowExceptionOnRecordNumber(ITER_COUNT + 1);
module.setItemProvider(new ListItemProvider(new ArrayList() {{
module.setItemProvider(new ListItemReader(new ArrayList() {{
add("a");
add("b");
add("c");

View File

@@ -4,7 +4,7 @@ import java.math.BigDecimal;
import junit.framework.TestCase;
import org.springframework.batch.io.file.support.DefaultFlatFileInputSource;
import org.springframework.batch.io.file.support.DefaultFlatFileItemReader;
import org.springframework.batch.sample.dao.TradeWriter;
import org.springframework.batch.sample.domain.Trade;
@@ -16,7 +16,7 @@ public class SimpleTradeTaskletTests extends TestCase {
public void testReadAndProcess() throws Exception {
//create input
DefaultFlatFileInputSource input = new DefaultFlatFileInputSource() {
DefaultFlatFileItemReader input = new DefaultFlatFileItemReader() {
private boolean done = false;
@@ -46,7 +46,7 @@ public class SimpleTradeTaskletTests extends TestCase {
//create module
SimpleTradeTasklet module = new SimpleTradeTasklet();
module.setInputSource(input);
module.setItemReader(input);
module.setTradeDao(writer);
//call tested methods