RESOLVED - issue BATCH-1109: Generalise PrefixMatching* to PatternMatching*
This commit is contained in:
@@ -25,17 +25,17 @@
|
||||
</bean>
|
||||
|
||||
<bean id="prefixMatchingLineMapper"
|
||||
class="org.springframework.batch.item.file.mapping.PrefixMatchingCompositeLineMapper">
|
||||
class="org.springframework.batch.item.file.mapping.PatternMatchingCompositeLineMapper">
|
||||
<property name="tokenizers">
|
||||
<map>
|
||||
<entry key="TRAD" value-ref="tradeLineTokenizer" />
|
||||
<entry key="CUST" value-ref="customerLineTokenizer" />
|
||||
<entry key="TRAD*" value-ref="tradeLineTokenizer" />
|
||||
<entry key="CUST*" value-ref="customerLineTokenizer" />
|
||||
</map>
|
||||
</property>
|
||||
<property name="fieldSetMappers">
|
||||
<map>
|
||||
<entry key="TRAD" value-ref="tradeFieldSetMapper" />
|
||||
<entry key="CUST" value-ref="customerFieldSetMapper" />
|
||||
<entry key="TRAD*" value-ref="tradeFieldSetMapper" />
|
||||
<entry key="CUST*" value-ref="customerFieldSetMapper" />
|
||||
</map>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans:beans xmlns="http://www.springframework.org/schema/batch"
|
||||
xmlns:beans="http://www.springframework.org/schema/beans"
|
||||
<beans xmlns:batch="http://www.springframework.org/schema/batch"
|
||||
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
|
||||
@@ -10,71 +10,71 @@
|
||||
http://www.springframework.org/schema/aop
|
||||
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
|
||||
|
||||
<job id="multilineJob">
|
||||
<step id="step1">
|
||||
<tasklet reader="reader" writer="writer" commit-interval="1">
|
||||
<streams>
|
||||
<stream ref="fileItemReader"/>
|
||||
</streams>
|
||||
</tasklet>
|
||||
</step>
|
||||
</job>
|
||||
<batch:job id="multilineJob">
|
||||
<batch:step id="step1">
|
||||
<batch:tasklet reader="reader" writer="writer" commit-interval="1">
|
||||
<batch:streams>
|
||||
<batch:stream ref="fileItemReader"/>
|
||||
</batch:streams>
|
||||
</batch:tasklet>
|
||||
</batch:step>
|
||||
</batch:job>
|
||||
|
||||
<beans:bean id="reader" class="org.springframework.batch.sample.domain.multiline.AggregateItemReader">
|
||||
<beans:property name="itemReader" ref="fileItemReader" />
|
||||
</beans:bean>
|
||||
<bean id="reader" class="org.springframework.batch.sample.domain.multiline.AggregateItemReader">
|
||||
<property name="itemReader" ref="fileItemReader" />
|
||||
</bean>
|
||||
|
||||
<beans:bean id="writer" class="org.springframework.batch.item.file.FlatFileItemWriter">
|
||||
<beans:property name="resource" value="file:target/test-outputs/20070122.testStream.multilineStep.txt" />
|
||||
<beans:property name="lineAggregator">
|
||||
<beans:bean class="org.springframework.batch.item.file.transform.PassThroughLineAggregator"/>
|
||||
</beans:property>
|
||||
</beans:bean>
|
||||
<bean id="writer" class="org.springframework.batch.item.file.FlatFileItemWriter">
|
||||
<property name="resource" value="file:target/test-outputs/20070122.testStream.multilineStep.txt" />
|
||||
<property name="lineAggregator">
|
||||
<bean class="org.springframework.batch.item.file.transform.PassThroughLineAggregator"/>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<beans:bean id="fileItemReader"
|
||||
<bean id="fileItemReader"
|
||||
class="org.springframework.batch.item.file.FlatFileItemReader">
|
||||
<beans:property name="resource"
|
||||
<property name="resource"
|
||||
value="classpath:data/multilineJob/input/20070122.teststream.multilineStep.txt" />
|
||||
<beans:property name="lineMapper">
|
||||
<beans:bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
|
||||
<beans:property name="lineTokenizer" ref="fixedFileDescriptor" />
|
||||
<beans:property name="fieldSetMapper">
|
||||
<beans:bean class="org.springframework.batch.sample.domain.multiline.AggregateItemFieldSetMapper">
|
||||
<beans:property name="delegate" ref="tradeLineMapper" />
|
||||
</beans:bean>
|
||||
</beans:property>
|
||||
</beans:bean>
|
||||
</beans:property>
|
||||
</beans:bean>
|
||||
<property name="lineMapper">
|
||||
<bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
|
||||
<property name="lineTokenizer" ref="fixedFileDescriptor" />
|
||||
<property name="fieldSetMapper">
|
||||
<bean class="org.springframework.batch.sample.domain.multiline.AggregateItemFieldSetMapper">
|
||||
<property name="delegate" ref="tradeLineMapper" />
|
||||
</bean>
|
||||
</property>
|
||||
</bean>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<beans:bean id="tradeLineMapper"
|
||||
<bean id="tradeLineMapper"
|
||||
class="org.springframework.batch.sample.domain.trade.internal.TradeFieldSetMapper" />
|
||||
|
||||
<beans:bean id="fixedFileDescriptor"
|
||||
class="org.springframework.batch.item.file.transform.PrefixMatchingCompositeLineTokenizer">
|
||||
<beans:property name="tokenizers">
|
||||
<beans:map>
|
||||
<beans:entry key="BEGIN" value-ref="beginRecordTokenizer" />
|
||||
<beans:entry key="END" value-ref="endRecordTokenizer" />
|
||||
<beans:entry key="" value-ref="tradeRecordTokenizer" />
|
||||
</beans:map>
|
||||
</beans:property>
|
||||
</beans:bean>
|
||||
<bean id="fixedFileDescriptor"
|
||||
class="org.springframework.batch.item.file.transform.PatternMatchingCompositeLineTokenizer">
|
||||
<property name="tokenizers">
|
||||
<map>
|
||||
<entry key="BEGIN*" value-ref="beginRecordTokenizer" />
|
||||
<entry key="END*" value-ref="endRecordTokenizer" />
|
||||
<entry key="*" value-ref="tradeRecordTokenizer" />
|
||||
</map>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<beans:bean id="beginRecordTokenizer"
|
||||
<bean id="beginRecordTokenizer"
|
||||
class="org.springframework.batch.item.file.transform.FixedLengthTokenizer">
|
||||
<beans:property name="columns" value="1-5" />
|
||||
</beans:bean>
|
||||
<property name="columns" value="1-5" />
|
||||
</bean>
|
||||
|
||||
<beans:bean id="endRecordTokenizer"
|
||||
<bean id="endRecordTokenizer"
|
||||
class="org.springframework.batch.item.file.transform.FixedLengthTokenizer">
|
||||
<beans:property name="columns" value="1-3" />
|
||||
</beans:bean>
|
||||
<property name="columns" value="1-3" />
|
||||
</bean>
|
||||
|
||||
<beans:bean id="tradeRecordTokenizer"
|
||||
<bean id="tradeRecordTokenizer"
|
||||
class="org.springframework.batch.item.file.transform.FixedLengthTokenizer">
|
||||
<beans:property name="names" value="ISIN,Quantity,Price,Customer" />
|
||||
<beans:property name="columns" value="1-12, 13-15, 16-20, 21-29" />
|
||||
</beans:bean>
|
||||
<property name="names" value="ISIN,Quantity,Price,Customer" />
|
||||
<property name="columns" value="1-12, 13-15, 16-20, 21-29" />
|
||||
</bean>
|
||||
|
||||
</beans:beans>
|
||||
</beans>
|
||||
@@ -4,19 +4,19 @@
|
||||
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
|
||||
|
||||
<bean id="orderFileTokenizer"
|
||||
class="org.springframework.batch.item.file.transform.PrefixMatchingCompositeLineTokenizer">
|
||||
class="org.springframework.batch.item.file.transform.PatternMatchingCompositeLineTokenizer">
|
||||
<property name="tokenizers">
|
||||
<map>
|
||||
<entry key="HEA" value-ref="headerRecordTokenizer" />
|
||||
<entry key="FOT" value-ref="footerRecordTokenizer" />
|
||||
<entry key="BCU" value-ref="businessCustomerLineTokenizer" />
|
||||
<entry key="NCU" value-ref="customerLineTokenizer" />
|
||||
<entry key="BAD" value-ref="billingAddressLineTokenizer" />
|
||||
<entry key="SAD" value-ref="shippingAddressLineTokenizer" />
|
||||
<entry key="BIN" value-ref="billingLineTokenizer" />
|
||||
<entry key="SIN" value-ref="shippingLineTokenizer" />
|
||||
<entry key="LIT" value-ref="itemLineTokenizer" />
|
||||
<entry key="" value-ref="defaultLineTokenizer" />
|
||||
<entry key="HEA*" value-ref="headerRecordTokenizer" />
|
||||
<entry key="FOT*" value-ref="footerRecordTokenizer" />
|
||||
<entry key="BCU*" value-ref="businessCustomerLineTokenizer" />
|
||||
<entry key="NCU*" value-ref="customerLineTokenizer" />
|
||||
<entry key="BAD*" value-ref="billingAddressLineTokenizer" />
|
||||
<entry key="SAD*" value-ref="shippingAddressLineTokenizer" />
|
||||
<entry key="BIN*" value-ref="billingLineTokenizer" />
|
||||
<entry key="SIN*" value-ref="shippingLineTokenizer" />
|
||||
<entry key="LIT*" value-ref="itemLineTokenizer" />
|
||||
<entry key="*" value-ref="defaultLineTokenizer" />
|
||||
</map>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
Reference in New Issue
Block a user