org.springframework.jms.connection
Class CachedMessageProducer

java.lang.Object
  extended by org.springframework.jms.connection.CachedMessageProducer
All Implemented Interfaces:
javax.jms.MessageProducer, javax.jms.QueueSender, javax.jms.TopicPublisher

 class CachedMessageProducer
extends java.lang.Object
implements javax.jms.MessageProducer, javax.jms.QueueSender, javax.jms.TopicPublisher

JMS MessageProducer decorator that adapts calls to a shared MessageProducer instance underneath, managing QoS settings locally within the decorator.

Since:
2.5.3
Author:
Juergen Hoeller

Field Summary
private  int deliveryMode
           
private  java.lang.Boolean originalDisableMessageID
           
private  java.lang.Boolean originalDisableMessageTimestamp
           
private  int priority
           
private  javax.jms.MessageProducer target
           
private  long timeToLive
           
 
Constructor Summary
CachedMessageProducer(javax.jms.MessageProducer target)
           
 
Method Summary
 void close()
           
 int getDeliveryMode()
           
 javax.jms.Destination getDestination()
           
 boolean getDisableMessageID()
           
 boolean getDisableMessageTimestamp()
           
 int getPriority()
           
 javax.jms.Queue getQueue()
           
 long getTimeToLive()
           
 javax.jms.Topic getTopic()
           
 void publish(javax.jms.Message message)
           
 void publish(javax.jms.Message message, int deliveryMode, int priority, long timeToLive)
           
 void publish(javax.jms.Topic topic, javax.jms.Message message)
           
 void publish(javax.jms.Topic topic, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)
           
 void send(javax.jms.Destination destination, javax.jms.Message message)
           
 void send(javax.jms.Destination destination, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)
           
 void send(javax.jms.Message message)
           
 void send(javax.jms.Message message, int deliveryMode, int priority, long timeToLive)
           
 void send(javax.jms.Queue queue, javax.jms.Message message)
           
 void send(javax.jms.Queue queue, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)
           
 void setDeliveryMode(int deliveryMode)
           
 void setDisableMessageID(boolean disableMessageID)
           
 void setDisableMessageTimestamp(boolean disableMessageTimestamp)
           
 void setPriority(int priority)
           
 void setTimeToLive(long timeToLive)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

target

private final javax.jms.MessageProducer target

originalDisableMessageID

private java.lang.Boolean originalDisableMessageID

originalDisableMessageTimestamp

private java.lang.Boolean originalDisableMessageTimestamp

deliveryMode

private int deliveryMode

priority

private int priority

timeToLive

private long timeToLive
Constructor Detail

CachedMessageProducer

public CachedMessageProducer(javax.jms.MessageProducer target)
                      throws javax.jms.JMSException
Throws:
javax.jms.JMSException
Method Detail

setDisableMessageID

public void setDisableMessageID(boolean disableMessageID)
                         throws javax.jms.JMSException
Specified by:
setDisableMessageID in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

getDisableMessageID

public boolean getDisableMessageID()
                            throws javax.jms.JMSException
Specified by:
getDisableMessageID in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

setDisableMessageTimestamp

public void setDisableMessageTimestamp(boolean disableMessageTimestamp)
                                throws javax.jms.JMSException
Specified by:
setDisableMessageTimestamp in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

getDisableMessageTimestamp

public boolean getDisableMessageTimestamp()
                                   throws javax.jms.JMSException
Specified by:
getDisableMessageTimestamp in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

setDeliveryMode

public void setDeliveryMode(int deliveryMode)
Specified by:
setDeliveryMode in interface javax.jms.MessageProducer

getDeliveryMode

public int getDeliveryMode()
Specified by:
getDeliveryMode in interface javax.jms.MessageProducer

setPriority

public void setPriority(int priority)
Specified by:
setPriority in interface javax.jms.MessageProducer

getPriority

public int getPriority()
Specified by:
getPriority in interface javax.jms.MessageProducer

setTimeToLive

public void setTimeToLive(long timeToLive)
Specified by:
setTimeToLive in interface javax.jms.MessageProducer

getTimeToLive

public long getTimeToLive()
Specified by:
getTimeToLive in interface javax.jms.MessageProducer

getDestination

public javax.jms.Destination getDestination()
                                     throws javax.jms.JMSException
Specified by:
getDestination in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

getQueue

public javax.jms.Queue getQueue()
                         throws javax.jms.JMSException
Specified by:
getQueue in interface javax.jms.QueueSender
Throws:
javax.jms.JMSException

getTopic

public javax.jms.Topic getTopic()
                         throws javax.jms.JMSException
Specified by:
getTopic in interface javax.jms.TopicPublisher
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Message message)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.MessageProducer
Specified by:
send in interface javax.jms.QueueSender
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Message message,
                 int deliveryMode,
                 int priority,
                 long timeToLive)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.MessageProducer
Specified by:
send in interface javax.jms.QueueSender
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Destination destination,
                 javax.jms.Message message)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Destination destination,
                 javax.jms.Message message,
                 int deliveryMode,
                 int priority,
                 long timeToLive)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Queue queue,
                 javax.jms.Message message)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.QueueSender
Throws:
javax.jms.JMSException

send

public void send(javax.jms.Queue queue,
                 javax.jms.Message message,
                 int deliveryMode,
                 int priority,
                 long timeToLive)
          throws javax.jms.JMSException
Specified by:
send in interface javax.jms.QueueSender
Throws:
javax.jms.JMSException

publish

public void publish(javax.jms.Message message)
             throws javax.jms.JMSException
Specified by:
publish in interface javax.jms.TopicPublisher
Throws:
javax.jms.JMSException

publish

public void publish(javax.jms.Message message,
                    int deliveryMode,
                    int priority,
                    long timeToLive)
             throws javax.jms.JMSException
Specified by:
publish in interface javax.jms.TopicPublisher
Throws:
javax.jms.JMSException

publish

public void publish(javax.jms.Topic topic,
                    javax.jms.Message message)
             throws javax.jms.JMSException
Specified by:
publish in interface javax.jms.TopicPublisher
Throws:
javax.jms.JMSException

publish

public void publish(javax.jms.Topic topic,
                    javax.jms.Message message,
                    int deliveryMode,
                    int priority,
                    long timeToLive)
             throws javax.jms.JMSException
Specified by:
publish in interface javax.jms.TopicPublisher
Throws:
javax.jms.JMSException

close

public void close()
           throws javax.jms.JMSException
Specified by:
close in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object