Class MultiPayloadMessageSplitter

  • All Implemented Interfaces:
    MessageSplitter

    @ComponentProfile(summary="Split a multi-payload message so that each payload can be serviced independently",
                      tag="multi-payload,splitter",
                      since="3.10")
    public class MultiPayloadMessageSplitter
    extends MessageSplitterImp
    Split a multi-payload Adaptris message into its various payloads and return a list of standard Adaptris messages. This will copy all additional metadata; all split messages will have identical metadata to the original.
    
     <split-join-service>
       <unique-id>split-join-id</unique-id>
       <service class="shared-service">
         <lookup-name>for-each-service-list-id</lookup-name>
         <unique-id>for-each-service-list-id</unique-id>
       </service>
       <splitter class="multi-payload-splitter"/>
       <aggregator class="multi-payload-aggregator">
         <replace-original-message>false</replace-original-message>
       </aggregator>
     </split-join-service>
     
    Since:
    3.10
    See Also:
    MultiPayloadAdaptrisMessage

    In the adapter configuration file this class is aliased as multi-payload-splitter which is the preferred alternative to the fully qualified classname when building your configuration.

    • Constructor Detail

      • MultiPayloadMessageSplitter

        public MultiPayloadMessageSplitter()
    • Method Detail

      • splitMessage

        public java.lang.Iterable<AdaptrisMessage> splitMessage​(AdaptrisMessage msg)
        Description copied from interface: MessageSplitter

        Splits an AdaptrisMessage into some number of AdaptrisMessage objects. Preservation of metadata is down to the implementation.

        If this method returns a CloseableIterable, it must be closed by the caller! This contract cannot be clearly expressed in Java code without breaking the API in uncomfortable ways for things just returning a List, which is why this method is only declared to return Iterable.

        Parameters:
        msg - the msg to split
        Returns:
        an Iterable of AdaptrisMessage