org.stringtree.jms
Class InMemoryProducer

java.lang.Object
  extended by org.stringtree.jms.InMemoryProducer
All Implemented Interfaces:
javax.jms.MessageProducer, javax.jms.QueueSender, javax.jms.TopicPublisher

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


Field Summary
protected  java.util.List deferred
           
protected  int deliveryMode
           
protected  javax.jms.Destination destination
           
protected  boolean disableMessageID
           
protected  boolean disableMessageTimestamp
           
protected  int priority
           
private  boolean running
           
protected  long timeToLive
           
 
Constructor Summary
InMemoryProducer(javax.jms.Destination destination)
           
 
Method Summary
 void close()
           
private  void flush()
           
 int getDeliveryMode()
           
 javax.jms.Destination getDestination()
           
 boolean getDisableMessageID()
           
 boolean getDisableMessageTimestamp()
           
 int getPriority()
           
 javax.jms.Queue getQueue()
           
 long getTimeToLive()
           
 javax.jms.Topic getTopic()
           
private  void produceOrDefer(javax.jms.Destination destination, javax.jms.Message message)
           
 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 defaultPriority)
           
 void setStatus(boolean running)
           
 void setTimeToLive(long timeToLive)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

destination

protected javax.jms.Destination destination

deferred

protected java.util.List deferred

timeToLive

protected long timeToLive

priority

protected int priority

deliveryMode

protected int deliveryMode

disableMessageTimestamp

protected boolean disableMessageTimestamp

disableMessageID

protected boolean disableMessageID

running

private boolean running
Constructor Detail

InMemoryProducer

public InMemoryProducer(javax.jms.Destination destination)
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)
                     throws javax.jms.JMSException
Specified by:
setDeliveryMode in interface javax.jms.MessageProducer
Throws:
javax.jms.JMSException

getDeliveryMode

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

setPriority

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

getPriority

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

setTimeToLive

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

getTimeToLive

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

getDestination

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

close

public void close()
           throws javax.jms.JMSException
Specified by:
close in interface javax.jms.MessageProducer
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)
Specified by:
send in interface javax.jms.MessageProducer

send

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

getQueue

public javax.jms.Queue getQueue()
                         throws javax.jms.JMSException
Specified by:
getQueue in interface javax.jms.QueueSender
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

getTopic

public javax.jms.Topic getTopic()
                         throws javax.jms.JMSException
Specified by:
getTopic in interface javax.jms.TopicPublisher
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

setStatus

public void setStatus(boolean running)

produceOrDefer

private void produceOrDefer(javax.jms.Destination destination,
                            javax.jms.Message message)

flush

private void flush()