Class CompositeItemProcessor<I,​O>

  • All Implemented Interfaces:
    ItemProcessor<I,​O>, org.springframework.beans.factory.InitializingBean

    public class CompositeItemProcessor<I,​O>
    extends java.lang.Object
    implements ItemProcessor<I,​O>, org.springframework.beans.factory.InitializingBean
    Composite ItemProcessor that passes the item through a sequence of injected ItemTransformers (return value of previous transformation is the entry value of the next).

    Note the user is responsible for injecting a chain of ItemProcessors that conforms to declared input and output types.
    Author:
    Robert Kasanicky
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and TypeMethodDescription
      voidafterPropertiesSet() 
      Oprocess​(I item)
      Process the provided item, returning a potentially modified or new item for continued processing.
      voidsetDelegates​(java.util.List<? extends ItemProcessor<?,​?>> delegates)
      Establishes the ItemProcessor delegates that will work on the item to be processed.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CompositeItemProcessor

        public CompositeItemProcessor()
    • Method Detail

      • process

        public O process​(I item)
                  throws java.lang.Exception
        Description copied from interface: ItemProcessor
        Process the provided item, returning a potentially modified or new item for continued processing. If the returned result is null, it is assumed that processing of the item should not continue.
        Specified by:
        process in interface ItemProcessor<I,​O>
        Parameters:
        item - to be processed
        Returns:
        potentially modified or new item for continued processing, null if processing of the provided item should not continue.
        Throws:
        java.lang.Exception - thrown if exception occurs during processing.
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws java.lang.Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        java.lang.Exception
      • setDelegates

        public void setDelegates​(java.util.List<? extends ItemProcessor<?,​?>> delegates)
        Establishes the ItemProcessor delegates that will work on the item to be processed.
        Parameters:
        delegates - list of ItemProcessor delegates that will work on the item.