org.jboss.soa.esb.listeners.gateway.camel
Class CamelMessageComposer<T extends org.apache.camel.Message>

java.lang.Object
  extended by org.jboss.soa.esb.listeners.message.AbstractMessageComposer<T>
      extended by org.jboss.soa.esb.listeners.gateway.camel.CamelMessageComposer<T>
All Implemented Interfaces:
MessageComposer<T>

public class CamelMessageComposer<T extends org.apache.camel.Message>
extends AbstractMessageComposer<T>

CamelMessageComposer.

Author:
dward at jboss.org

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.jboss.soa.esb.listeners.message.MessageComposer
MessageComposer.Factory
 
Constructor Summary
CamelMessageComposer()
           
 
Method Summary
 T decompose(Message esbMessageOut, T camelMessageIn)
          Decompose the message.
protected  void populateMessage(Message esbMessageIn, T camelMessageIn)
          Populate
 
Methods inherited from class org.jboss.soa.esb.listeners.message.AbstractMessageComposer
compose, getConfiguration, getPayloadProxy, setConfiguration
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CamelMessageComposer

public CamelMessageComposer()
Method Detail

populateMessage

protected void populateMessage(Message esbMessageIn,
                               T camelMessageIn)
                        throws MessageDeliverException
Description copied from class: AbstractMessageComposer
Populate

Specified by:
populateMessage in class AbstractMessageComposer<T extends org.apache.camel.Message>
Parameters:
esbMessageIn - The message instance to be populated.
camelMessageIn - The message payload to to be populated into the message.
Throws:
MessageDeliverException - Unable to populate message with payload.

decompose

public T decompose(Message esbMessageOut,
                   T camelMessageIn)
                                             throws MessageDeliverException
Description copied from class: AbstractMessageComposer
Decompose the message.

This implementation simple calls Body.get(ActionUtils.POST_ACTION_DATA)}. Override to implement an alternative Message decomposition strategy.

Specified by:
decompose in interface MessageComposer<T extends org.apache.camel.Message>
Overrides:
decompose in class AbstractMessageComposer<T extends org.apache.camel.Message>
Parameters:
esbMessageOut - The message to be decomposed.
camelMessageIn - The original input message payload used to compose this (or ther original) message. The original message can sometimes contain information relevant during the decomposition process. Whether or not this parameter can be null depends on the MessageComposer implementation.
Returns:
The message "task object".
Throws:
MessageDeliverException - Failed to decompose message payload.