318.6.3. CamelItemProcessor
CamelItemProcessor 는 Spring Batch org.springframework.batch.item.ItemProcessor 인터페이스의 구현입니다. 후자의 구현에서는 Request Reply 패턴 을 릴레이하여 배치 항목의 처리를 Camel 인프라에 위임합니다. 처리할 항목은 메시지 본문으로 Camel 엔드포인트로 전송됩니다.
예를 들어 아래 스니펫은 Direct endpoint 및 Simple expression 언어를 사용하여 배치 항목을 간단 하게 처리합니다.
<camel:camelContext>
<camel:route>
<camel:from uri="direct:processor"/>
<camel:setExchangePattern pattern="InOut"/>
<camel:setBody>
<camel:simple>Processed ${body}</camel:simple>
</camel:setBody>
</camel:route>
</camel:camelContext>
<bean id="camelProcessor" class="org.apache.camel.component.spring.batch.support.CamelItemProcessor">
<constructor-arg ref="producerTemplate"/>
<constructor-arg value="direct:processor"/>
</bean>
<batch:job id="myJob">
<batch:step id="step">
<batch:tasklet>
<batch:chunk reader="someReader" writer="someWriter" processor="camelProcessor" commit-interval="100"/>
</batch:tasklet>
</batch:step>
</batch:job>