Example usage for org.springframework.batch.item.support CompositeItemProcessor CompositeItemProcessor

List of usage examples for org.springframework.batch.item.support CompositeItemProcessor CompositeItemProcessor

Introduction

In this page you can find the example usage for org.springframework.batch.item.support CompositeItemProcessor CompositeItemProcessor.

Prototype

CompositeItemProcessor

Source Link

Usage

From source file:uk.ac.kcl.batch.JobConfiguration.java

@Bean
@Qualifier("compositeItemProcessorr")
public ItemProcessor<Document, Document> compositeItemProcessor() {
    CompositeItemProcessor processor = new CompositeItemProcessor<>();
    ArrayList<ItemProcessor<Document, Document>> delegates = new ArrayList<>();

    if (tikaItemProcessor != null)
        delegates.add(tikaItemProcessor);
    if (pdfBoxItemProcessor != null)
        delegates.add(pdfBoxItemProcessor);
    if (metadataItemProcessor != null)
        delegates.add(metadataItemProcessor);
    if (dBLineFixerItemProcessor != null)
        delegates.add(dBLineFixerItemProcessor);
    if (gateItemProcessor != null)
        delegates.add(gateItemProcessor);
    if (deIdDocumentItemProcessor != null)
        delegates.add(deIdDocumentItemProcessor);
    if (webserviceDocumentItemProcessor != null)
        delegates.add(webserviceDocumentItemProcessor);
    if (pdfGenerationItemProcessor != null)
        delegates.add(pdfGenerationItemProcessor);
    if (thumbnailGenerationItemProcessor != null)
        delegates.add(thumbnailGenerationItemProcessor);

    delegates.add(jsonMakerItemProcessor);
    processor.setDelegates(delegates);/*from  ww  w .  j  a v  a  2s.  c o  m*/
    return processor;
}

From source file:com.create.application.configuration.BatchConfiguration.java

@Bean
public ItemProcessor<Ticket, Ticket> importTicketProcessor(final TicketRepository ticketRepository,
        final @Value("${ticket.metrics.count}") String countTicketType,
        final TicketCounterUpdater ticketCounterUpdater,
        final InternalTicketLatestCountUpdater internalTicketLatestCountUpdater) {
    final List<ItemProcessor<Ticket, Ticket>> delegates = Stream
            .of(new TicketUpdateItemProcessor(ticketRepository),
                    new MetricItemProcessor<>(hasType(TicketType.valueOf(countTicketType)),
                            ticketCounterUpdater),
                    new MetricItemProcessor<>(ticket -> true, internalTicketLatestCountUpdater))
            .collect(Collectors.toList());
    final CompositeItemProcessor<Ticket, Ticket> processor = new CompositeItemProcessor<>();
    processor.setDelegates(delegates);// w ww .j a  v a2  s  . c  o  m
    return processor;
}