com.j_spaces.jms
Class GSTemporaryQueueImpl

java.lang.Object
  extended by com.j_spaces.jms.GSQueueImpl
      extended by com.j_spaces.jms.GSTemporaryQueueImpl
All Implemented Interfaces:
Serializable, Remote, Destination, Queue, TemporaryQueue

public class GSTemporaryQueueImpl
extends GSQueueImpl
implements TemporaryQueue, Serializable

GigaSpaces implementation of the javax.jms.TemporaryQueue interface. This class represents a queue which provides it's messages exclusively to one consumer at a time. In our case, the Queue name represents the GigaSpaces entry class name. We use the same space proxy we obtained in the session and we write another External Entry, which will have a class name of 'TempQueue_< >. The only message consumers that can consume from a temporary destination are those created by the same connection that created the destination. Any message producer can send to the temporary destination. If you close the connection that a temporary destination belongs to, the destination is closed and its contents lost. You can use temporary destinations to implement a simple request/reply mechanism. If you create a temporary destination and specify it as the value of the JMSReplyTo message header field when you send a message, the consumer of the message can use the value of the JMSReplyTo field as the destination to which it sends a reply and can also reference the original request by setting the JMSCorrelationID header field of the reply message to the value of the JMSMessageID header field of the request.

See Also:
Serialized Form

Constructor Summary
GSTemporaryQueueImpl(String queueName, String srcID)
           
 
Method Summary
 void delete()
          We clear this temp external entry from space.
 String getDescription()
           
 String getSourceID()
          returns the source id of the object which have created this temp destination at first place.
 void setSourceID(String string)
           
 
Methods inherited from class com.j_spaces.jms.GSQueueImpl
equals, getQueueName, hashCode, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.jms.Queue
getQueueName, toString
 

Constructor Detail

GSTemporaryQueueImpl

public GSTemporaryQueueImpl(String queueName,
                            String srcID)
Parameters:
queueName -
srcID -
Method Detail

delete

public void delete()
            throws JMSException
We clear this temp external entry from space.

Specified by:
delete in interface TemporaryQueue
Throws:
JMSException
See Also:
TemporaryQueue.delete()

getSourceID

public String getSourceID()
returns the source id of the object which have created this temp destination at first place. It might be a specific MessageProducer or MessageConsumere etc.

Returns:
sourceID

setSourceID

public void setSourceID(String string)
Parameters:
string -

getDescription

public String getDescription()