BATCH-863: renamed ResourceLineReader to FlatFileItemReader

This commit is contained in:
trisberg
2008-10-07 17:58:48 +00:00
parent 2040c31c6c
commit 9ec2a67a97
20 changed files with 91 additions and 91 deletions

View File

@@ -27,10 +27,10 @@ import org.springframework.util.ClassUtils;
*
* @author Robert Kasanicky
*/
public class ResourceLineReader<T> extends AbstractItemCountingItemStreamItemReader<T> implements
public class FlatFileItemReader<T> extends AbstractItemCountingItemStreamItemReader<T> implements
ResourceAwareItemReaderItemStream<T>, InitializingBean {
private static final Log logger = LogFactory.getLog(ResourceLineReader.class);
private static final Log logger = LogFactory.getLog(FlatFileItemReader.class);
// default encoding for input files
public static final String DEFAULT_CHARSET = Charset.defaultCharset().name();
@@ -55,8 +55,8 @@ public class ResourceLineReader<T> extends AbstractItemCountingItemStreamItemRea
private LineCallbackHandler skippedLinesCallback;
public ResourceLineReader() {
setName(ClassUtils.getShortName(ResourceLineReader.class));
public FlatFileItemReader() {
setName(ClassUtils.getShortName(FlatFileItemReader.class));
}
/**

View File

@@ -9,15 +9,15 @@ import org.springframework.core.io.ByteArrayResource;
import org.springframework.core.io.Resource;
/**
* Tests for {@link ResourceLineReader}.
* Tests for {@link FlatFileItemReader}.
*/
public class ResourceLineReaderCommonTests extends CommonItemStreamItemReaderTests{
public class FlatFileItemReaderCommonTests extends CommonItemStreamItemReaderTests{
private static final String FOOS = "1 \n 2 \n 3 \n 4 \n 5 \n";
@Override
protected ItemReader<Foo> getItemReader() throws Exception {
ResourceLineReader<Foo> tested = new ResourceLineReader<Foo>();
FlatFileItemReader<Foo> tested = new FlatFileItemReader<Foo>();
Resource resource = new ByteArrayResource(FOOS.getBytes());
tested.setResource(resource);
tested.setLineMapper(new LineMapper<Foo>() {
@@ -35,7 +35,7 @@ public class ResourceLineReaderCommonTests extends CommonItemStreamItemReaderTes
@Override
protected void pointToEmptyInput(ItemReader<Foo> tested) throws Exception {
ResourceLineReader<Foo> reader = (ResourceLineReader<Foo>) tested;
FlatFileItemReader<Foo> reader = (FlatFileItemReader<Foo>) tested;
reader.close(new ExecutionContext());
reader.setResource(new ByteArrayResource("".getBytes()));

View File

@@ -16,14 +16,14 @@ import org.springframework.core.io.Resource;
import org.springframework.util.ClassUtils;
/**
* Tests for {@link ResourceLineReader}.
* Tests for {@link FlatFileItemReader}.
*/
public class ResourceLineReaderTests {
public class FlatFileItemReaderTests {
// common value used for writing to a file
// common value used for writing to a file
private String TEST_STRING = "FlatFileInputTemplate-TestData";
private ResourceLineReader<String> reader = new ResourceLineReader<String>();
private FlatFileItemReader<String> reader = new FlatFileItemReader<String>();
private ExecutionContext executionContext = new ExecutionContext();
@@ -38,7 +38,7 @@ public class ResourceLineReaderTests {
public void testRestartWithCustomRecordSeparatorPolicy() throws Exception {
reader.setRecordSeparatorPolicy(new RecordSeparatorPolicy() {
// 1 record = 2 lines
// 1 record = 2 lines
boolean pair = true;
public boolean isEndOfRecord(String line) {
@@ -75,31 +75,31 @@ public class ResourceLineReaderTests {
reader.setLinesToSkip(2);
reader.open(executionContext);
// read some records
// read some records
reader.read();
reader.read();
// get restart data
// get restart data
reader.update(executionContext);
// read next two records
// read next two records
reader.read();
reader.read();
assertEquals(2, executionContext.getLong(ClassUtils.getShortName(ResourceLineReader.class) + ".read.count"));
// close input
assertEquals(2, executionContext.getLong(ClassUtils.getShortName(FlatFileItemReader.class) + ".read.count"));
// close input
reader.close(executionContext);
reader
.setResource(getInputResource("header\nignoreme\ntestLine1\ntestLine2\ntestLine3\ntestLine4\ntestLine5\ntestLine6"));
// init for restart
// init for restart
reader.open(executionContext);
// read remaining records
// read remaining records
assertEquals("testLine3", reader.read().toString());
assertEquals("testLine4", reader.read().toString());
reader.update(executionContext);
assertEquals(4, executionContext.getLong(ClassUtils.getShortName(ResourceLineReader.class) + ".read.count"));
assertEquals(4, executionContext.getLong(ClassUtils.getShortName(FlatFileItemReader.class) + ".read.count"));
}
@Test
@@ -110,7 +110,7 @@ public class ResourceLineReaderTests {
reader.setResource(resource);
// afterPropertiesSet should only throw an exception if the Resource is
// null
// null
reader.afterPropertiesSet();
reader.open(executionContext);
@@ -126,10 +126,10 @@ public class ResourceLineReaderTests {
reader.setResource(resource);
// afterPropertiesSet should only throw an exception if the Resource is
// null
// null
reader.afterPropertiesSet();
// replace the resource to simulate runtime resource creation
// replace the resource to simulate runtime resource creation
reader.setResource(getInputResource(TEST_STRING));
reader.open(executionContext);
assertEquals(TEST_STRING, reader.read());

View File

@@ -19,7 +19,7 @@ public class MultiResourceItemReaderFlatFileTests extends
protected ItemReader<Foo> getItemReader() throws Exception {
MultiResourceItemReader<Foo> multiReader = new MultiResourceItemReader<Foo>();
ResourceLineReader<Foo> fileReader = new ResourceLineReader<Foo>();
FlatFileItemReader<Foo> fileReader = new FlatFileItemReader<Foo>();
fileReader.setLineMapper(new LineMapper<Foo>() {

View File

@@ -16,7 +16,7 @@ public class MultiResourceItemReaderIntegrationTests extends TestCase {
private MultiResourceItemReader<String> tested = new MultiResourceItemReader<String>();
private ResourceLineReader<String> itemReader = new ResourceLineReader<String>();
private FlatFileItemReader<String> itemReader = new FlatFileItemReader<String>();
private ExecutionContext ctx = new ExecutionContext();

View File

@@ -22,7 +22,7 @@ import junit.framework.TestCase;
import org.springframework.batch.item.ExecutionContext;
import org.springframework.batch.item.ItemWriter;
import org.springframework.batch.item.file.ResourceLineReader;
import org.springframework.batch.item.file.FlatFileItemReader;
import org.springframework.batch.item.file.mapping.DefaultLineMapper;
import org.springframework.batch.item.file.mapping.FieldSet;
import org.springframework.batch.item.file.mapping.FieldSetMapper;
@@ -52,7 +52,7 @@ public abstract class AbstractTradeBatchTests extends TestCase {
provider.open(new ExecutionContext());
}
protected static class TradeItemReader extends ResourceLineReader<Trade> {
protected static class TradeItemReader extends FlatFileItemReader<Trade> {
protected TradeItemReader(Resource resource) throws Exception {
super();

View File

@@ -6,11 +6,11 @@ import java.io.Writer;
import org.springframework.batch.item.file.FileWriterCallback;
import org.springframework.batch.item.file.FlatFileItemWriter;
import org.springframework.batch.item.file.LineCallbackHandler;
import org.springframework.batch.item.file.ResourceLineReader;
import org.springframework.batch.item.file.FlatFileItemReader;
import org.springframework.util.Assert;
/**
* Designed to be registered with both {@link ResourceLineReader} and
* Designed to be registered with both {@link FlatFileItemReader} and
* {@link FlatFileItemWriter} and copy header line from input file to output
* file.
*/

View File

@@ -36,7 +36,7 @@
<!-- INFRASTRUCTURE SETUP -->
<bean id="tradeFileItemReader" class="org.springframework.batch.item.file.ResourceLineReader">
<bean id="tradeFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/beanWrapperMapperSampleJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">
@@ -47,7 +47,7 @@
</property>
</bean>
<bean id="personFileItemReader" class="org.springframework.batch.item.file.ResourceLineReader">
<bean id="personFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/beanWrapperMapperSampleJob/input/20070122.teststream.ImportPersonDataStep.txt" />
<property name="lineMapper">
@@ -83,15 +83,15 @@
</property>
</bean>
<bean id="tradeDao" class="org.springframework.batch.sample.domain.trade.internal.JdbcTradeDao">
<property name="dataSource" ref="dataSource" />
<property name="incrementer">
<bean parent="incrementerParent">
<property name="incrementerName" value="TRADE_SEQ" />
</bean>
</property>
</bean>
<bean id="tradeDao" class="org.springframework.batch.sample.domain.trade.internal.JdbcTradeDao">
<property name="dataSource" ref="dataSource" />
<property name="incrementer">
<bean parent="incrementerParent">
<property name="incrementerName" value="TRADE_SEQ" />
</bean>
</property>
</bean>
<bean id="tradeFieldSetMapper" class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper">
<property name="prototypeBeanName" value="trade" />
</bean>

View File

@@ -45,7 +45,7 @@
</bean>
<bean id="fileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">

View File

@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:lang="http://www.springframework.org/schema/lang"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang.xsd">
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:lang="http://www.springframework.org/schema/lang"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang.xsd">
<bean name="customerFilterJob" parent="simpleJob">
<property name="steps">
@@ -32,7 +32,7 @@
</property>
</bean>
<bean name="customerFileUploadReader" class="org.springframework.batch.item.file.ResourceLineReader" >
<bean name="customerFileUploadReader" class="org.springframework.batch.item.file.FlatFileItemReader" >
<property name="resource" ref="customerFileResource" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.PassThroughLineMapper" />
@@ -41,7 +41,7 @@
<bean name="customerMapper" class="org.springframework.batch.sample.domain.trade.CustomerUpdateFieldSetMapper" />
<bean name="customerTokenizer" class="org.springframework.batch.sample.domain.trade.CompositeCustomerUpdateLineTokenizer" >
<bean name="customerTokenizer" class="org.springframework.batch.sample.domain.trade.CompositeCustomerUpdateLineTokenizer" >
<property name="customerTokenizer">
<bean class="org.springframework.batch.item.file.transform.FixedLengthTokenizer" >
<property name="columns" value="1,2-18,19-26" />
@@ -67,5 +67,5 @@
<bean name="customerFileResource" class="org.springframework.core.io.ClassPathResource" >
<constructor-arg value="data/customerFilterJob/input/customers.txt" />
</bean>
</bean>
</beans>

View File

@@ -28,7 +28,7 @@
<!-- INFRASTRUCTURE SETUP -->
<!-- This input source is injected into the test case to verify the output - not used by the job at all -->
<bean id="testItemReader" class="org.springframework.batch.item.file.ResourceLineReader">
<bean id="testItemReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">

View File

@@ -59,7 +59,7 @@
</bean>
<bean id="playerFileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/footballjob/input/${player.file.name}" />
<property name="lineMapper">
@@ -80,7 +80,7 @@
</bean>
<bean id="gameFileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/footballjob/input/${games.file.name}" />
<property name="lineMapper">

View File

@@ -28,7 +28,7 @@
</bean>
</property>
</bean>
<bean id="reader" class="org.springframework.batch.item.file.ResourceLineReader">
<bean id="reader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource" ref="inputResource" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">

View File

@@ -42,7 +42,7 @@
autowire-candidate="false" />
<bean id="flatFileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">

View File

@@ -2,16 +2,16 @@
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
<bean id="multilineJob" parent="simpleJob">
<property name="steps">
<bean id="multilineJob" parent="simpleJob">
<property name="steps">
<bean id="step1" parent="simpleStep">
<property name="streams" ref="fileItemReader"/>
<property name="itemReader">
<property name="streams" ref="fileItemReader"/>
<property name="itemReader">
<bean
class="org.springframework.batch.item.support.AggregateItemReader">
<property name="itemReader"
@@ -33,7 +33,7 @@
</bean>
<bean id="fileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/multilineJob/input/20070122.teststream.multilineStep.txt" />
<property name="lineMapper">

View File

@@ -1,20 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop"
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
<bean id="fileItemReader" class="org.springframework.batch.item.file.ResourceLineReader">
<property name="resource" ref="fileInputLocator" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
<property name="lineTokenizer" ref="orderFileTokenizer" />
<property name="fieldSetMapper">
<bean class="org.springframework.batch.item.file.mapping.PassThroughFieldSetMapper" />
</property>
</bean>
<bean id="fileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource" ref="fileInputLocator" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
<property name="lineTokenizer" ref="orderFileTokenizer" />
<property name="fieldSetMapper">
<bean class="org.springframework.batch.item.file.mapping.PassThroughFieldSetMapper" />
</property>
</bean>
</property>
</bean>

View File

@@ -66,7 +66,7 @@
<!-- This input source is injected into the test case to verify the output - not used by the job at all -->
<bean id="testItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">

View File

@@ -38,7 +38,7 @@
</bean>
<bean id="fileItemReader"
class="org.springframework.batch.item.file.ResourceLineReader">
class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource"
value="classpath:data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt" />
<property name="lineMapper">

View File

@@ -9,15 +9,15 @@
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
<bean class="org.springframework.batch.sample.domain.trade.internal.JdbcTradeDao"
id="tradeDao" p:dataSource-ref="dataSource">
<property name="incrementer">
<bean parent="incrementerParent">
<property name="incrementerName" value="TRADE_SEQ" />
</bean>
</property>
</bean>
<bean class="org.springframework.batch.sample.domain.trade.internal.JdbcTradeDao"
id="tradeDao" p:dataSource-ref="dataSource">
<property name="incrementer">
<bean parent="incrementerParent">
<property name="incrementerName" value="TRADE_SEQ" />
</bean>
</property>
</bean>
<bean
class="org.springframework.batch.sample.domain.trade.internal.JdbcCustomerDebitDao"
id="customerDao" p:dataSource-ref="dataSource" />
@@ -38,7 +38,7 @@
</property>
</bean>
<bean class="org.springframework.batch.item.file.ResourceLineReader"
<bean class="org.springframework.batch.item.file.FlatFileItemReader"
id="fileItemReader">
<property name="resource" ref="fileLocator" />
<property name="lineMapper">

View File

@@ -29,7 +29,7 @@ import javax.sql.DataSource;
import org.junit.Before;
import org.junit.runner.RunWith;
import org.springframework.batch.item.ExecutionContext;
import org.springframework.batch.item.file.ResourceLineReader;
import org.springframework.batch.item.file.FlatFileItemReader;
import org.springframework.batch.item.file.mapping.DefaultLineMapper;
import org.springframework.batch.item.file.mapping.FieldSetMapper;
import org.springframework.batch.item.file.transform.LineTokenizer;
@@ -53,7 +53,7 @@ public class FixedLengthImportJobFunctionalTests extends AbstractValidatingBatch
//auto-injected attributes
private SimpleJdbcTemplate simpleJdbcTemplate;
private Resource fileLocator;
private ResourceLineReader<Trade> inputSource;
private FlatFileItemReader<Trade> inputSource;
private LineTokenizer lineTokenizer;
@Autowired
@@ -71,7 +71,7 @@ public class FixedLengthImportJobFunctionalTests extends AbstractValidatingBatch
public void onSetUp() throws Exception {
simpleJdbcTemplate.update("delete from TRADE");
fileLocator = new ClassPathResource("data/fixedLengthImportJob/input/20070122.teststream.ImportTradeDataStep.txt");
inputSource = new ResourceLineReader<Trade>();
inputSource = new FlatFileItemReader<Trade>();
FieldSetMapper<Trade> mapper = new TradeFieldSetMapper();
DefaultLineMapper<Trade> lineMapper = new DefaultLineMapper<Trade>();