Class ParallelSenders

All Implemented Interfaces:
ICacheEnabled<String,String>, AdapterAware, IConfigurable, IConfigurationAware, INamedObject, IScopeProvider, ISender, ISenderWithParameters, IWithParameters, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware
Direct Known Subclasses:
ShadowSender

@Category("Advanced") public class ParallelSenders extends SenderSeries
Collection of Senders, that are executed all at the same time.
Since:
4.9
Author:
Gerrit van Brakel
  • Constructor Details

    • ParallelSenders

      public ParallelSenders()
  • Method Details

    • configure

      public void configure() throws ConfigurationException
      Description copied from interface: ISender
      configure() is called once at startup of the framework in the configure method of the owner of this sender. Purpose of this method is to check whether the static configuration of the sender is correct. As much as possible class-instantiating should take place in the configure() or open() method, to improve performance.
      Specified by:
      configure in interface IConfigurable
      Specified by:
      configure in interface ISender
      Overrides:
      configure in class SenderSeries
      Throws:
      ConfigurationException
    • doSendMessage

      public SenderResult doSendMessage(Message message, PipeLineSession session) throws SenderException
      Overrides:
      doSendMessage in class SenderSeries
      Throws:
      SenderException
    • setSynchronous

      public void setSynchronous(boolean value)
      Overrides:
      setSynchronous in class SenderSeries
    • createTaskExecutor

      protected org.springframework.core.task.TaskExecutor createTaskExecutor()
    • registerSender

      public void registerSender(ISender sender)
      one or more specifications of senders. Each will receive the same input message, to be processed in parallel
      Overrides:
      registerSender in class SenderSeries
    • setMaxConcurrentThreads

      public void setMaxConcurrentThreads(int maxThreads)
      Set the upper limit to the amount of concurrent threads that can be run simultaneously. Use 0 to disable.
      Default value
      0
    • getMaxConcurrentThreads

      public int getMaxConcurrentThreads()
    • getExecutor

      public org.springframework.core.task.TaskExecutor getExecutor()