Class ChunkProcessorChunkHandler<S>

  • Type Parameters:
    S - the type of the items in the chunk to be handled
    All Implemented Interfaces:
    ChunkHandler<S>, org.springframework.beans.factory.InitializingBean

    @MessageEndpoint
    public class ChunkProcessorChunkHandler<S>
    extends java.lang.Object
    implements ChunkHandler<S>, org.springframework.beans.factory.InitializingBean
    A ChunkHandler based on a ChunkProcessor. Knows how to distinguish between a processor that is fault tolerant, and one that is not. If the processor is fault tolerant then exceptions can be propagated on the assumption that there will be a roll back and the request will be re-delivered.
    Author:
    Dave Syer, Michael Minella
    • Constructor Detail

      • ChunkProcessorChunkHandler

        public ChunkProcessorChunkHandler()
    • Method Detail

      • afterPropertiesSet

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

        public void setChunkProcessor​(ChunkProcessor<S> chunkProcessor)
        Public setter for the ChunkProcessor.
        Parameters:
        chunkProcessor - the chunkProcessor to set
      • handleChunk

        @ServiceActivator
        public ChunkResponse handleChunk​(ChunkRequest<S> chunkRequest)
                                  throws java.lang.Exception
        Description copied from interface: ChunkHandler
        Handle the chunk, processing all the items and returning a response summarising the result. If the result is a failure then the response should say so. The handler only throws an exception if it needs to roll back a transaction and knows that the request will be re-delivered (if not to the same handler then to one processing the same Step).
        Specified by:
        handleChunk in interface ChunkHandler<S>
        Parameters:
        chunkRequest - a request containing the chunk to process
        Returns:
        a response summarising the result
        Throws:
        java.lang.Exception - if the handler needs to roll back a transaction and have the chunk re-delivered
        See Also:
        ChunkHandler.handleChunk(ChunkRequest)