View Javadoc
1   /*
2    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
3    * The software in this package is published under the terms of the CPAL v1.0
4    * license, a copy of which has been included with this distribution in the
5    * LICENSE.txt file.
6    */
7   package org.mule.api.processor;
8   
9   import org.mule.api.MuleEvent;
10  import org.mule.api.source.MessageSource;
11  
12  /**
13   * Processes a {@link MuleEvent} by invoking the next {@link MessageProcessor} but
14   * receiving the reply, which is turn is returned from this MessageProcessor from a
15   * seperate {@link MessageSource} rather than using the return value of the
16   * <code>next</code> MessageProcessor invocation. Because two seperate channels are
17   * used, most implementations will want to implement the concept of a timeout which
18   * defines how long a reply should be waited for.
19   *
20   * @since 3.0
21   */
22  public interface RequestReplyRequesterMessageProcessor extends InterceptingMessageProcessor
23  {
24      /**
25       * @param replyMessageSource the message source that will be used to receive the reply message
26       */
27      void setReplySource(MessageSource replyMessageSource);
28  }