oranjestad.spring.beanutils.messaging.jms
Class GenericMessageMessageCreator

java.lang.Object
  extended by oranjestad.spring.beanutils.messaging.jms.GenericMessageMessageCreator
All Implemented Interfaces:
oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter, org.springframework.jms.core.MessageCreator

public class GenericMessageMessageCreator
extends java.lang.Object
implements oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter, org.springframework.jms.core.MessageCreator

Spring MessageCreator that uses a JmsMessageConverter to take generic messages and convert them to Jms messages.

Usage

Spring's JmsTemplate uses MessageCreators to provide the JMS messages it uses. To use this message creator you must call setGenericMessage(oranjestad.commons.beanutils.messaging.GenericMessage) in order pass the generic message to this create. ex.


 GenericMessageMessageCreator messageCreator = ...;
 JmsTemplate jmsTemplate = ...
 ...
 messageCreator.setGenericMessage(someMessage);
 jmsTemplate.send(messageCreator);
 

Since:
1.1
Author:
Bryant Harris

Constructor Summary
GenericMessageMessageCreator()
           
 
Method Summary
 javax.jms.Message convertGenericMessage(javax.jms.Session session, oranjestad.commons.beanutils.messaging.GenericMessage genericMessage)
           
 oranjestad.commons.beanutils.messaging.GenericMessage convertJmsMessage(javax.jms.Message message)
           
 javax.jms.Message createMessage(javax.jms.Session session)
           
 oranjestad.commons.beanutils.messaging.GenericMessage getGenericMessage()
           
 void setGenericMessage(oranjestad.commons.beanutils.messaging.GenericMessage gm)
          Sets the generic message that will be used in generating a JMS message.
 void setJmsMessageConverter(oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter converter)
          Sets the JmsMessageConverter that is used to convert between Generic messages and JMS messages.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GenericMessageMessageCreator

public GenericMessageMessageCreator()
Method Detail

setJmsMessageConverter

public void setJmsMessageConverter(oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter converter)
Sets the JmsMessageConverter that is used to convert between Generic messages and JMS messages. Typically converters must be paired on the send and receive side. The default is an instance of ObjectJmsMessageConverter.

Parameters:
converter - The new converter.
Since:
1.1

setGenericMessage

public void setGenericMessage(oranjestad.commons.beanutils.messaging.GenericMessage gm)

Sets the generic message that will be used in generating a JMS message. This method is threadlocal in that independent threads can call this method concurrently (assumes JmsTemplate is called from the same thread).

This value is cleared every time the createMessage(Session) method is called.

Parameters:
gm - The message.
Since:
1.1

getGenericMessage

public oranjestad.commons.beanutils.messaging.GenericMessage getGenericMessage()
Returns:
The generic message. Maybe be null if the message has already been created.
Since:
1.1

convertJmsMessage

public oranjestad.commons.beanutils.messaging.GenericMessage convertJmsMessage(javax.jms.Message message)
Specified by:
convertJmsMessage in interface oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter

convertGenericMessage

public javax.jms.Message convertGenericMessage(javax.jms.Session session,
                                               oranjestad.commons.beanutils.messaging.GenericMessage genericMessage)
Specified by:
convertGenericMessage in interface oranjestad.commons.beanutils.messaging.jms.JmsMessageConverter

createMessage

public javax.jms.Message createMessage(javax.jms.Session session)
                                throws javax.jms.JMSException
Specified by:
createMessage in interface org.springframework.jms.core.MessageCreator
Throws:
javax.jms.JMSException


Copyright © 2008. All Rights Reserved.