org.jboss.messaging.core.client.impl
Class ClientSessionImpl

java.lang.Object
  extended by org.jboss.messaging.core.client.impl.ClientSessionImpl
All Implemented Interfaces:
javax.transaction.xa.XAResource, ClientSession, ClientSessionInternal, CommandConfirmationHandler, FailureListener

public class ClientSessionImpl
extends java.lang.Object
implements ClientSessionInternal, FailureListener, CommandConfirmationHandler


Field Summary
static int INITIAL_MESSAGE_BODY_SIZE
           
 
Fields inherited from interface javax.transaction.xa.XAResource
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY
 
Constructor Summary
ClientSessionImpl(ConnectionManager connectionManager, java.lang.String name, boolean xa, boolean autoCommitSends, boolean autoCommitAcks, boolean preAcknowledge, boolean blockOnAcknowledge, boolean autoGroup, int ackBatchSize, int consumerWindowSize, int consumerMaxRate, int producerMaxRate, boolean blockOnNonPersistentSend, boolean blockOnPersistentSend, int minLargeMessageSize, RemotingConnection remotingConnection, int version, Channel channel, java.util.concurrent.Executor executor)
           
 
Method Summary
 void acknowledge(long consumerID, long messageID)
           
 void addConsumer(ClientConsumerInternal consumer)
           
 void addFailureListener(FailureListener listener)
           
 void addProducer(ClientProducerInternal producer)
           
 SessionBindingQueryResponseMessage bindingQuery(SimpleString address)
           
 void cleanUp()
           
 void close()
           
 void commandConfirmed(Packet packet)
           
 void commit()
           
 void commit(javax.transaction.xa.Xid xid, boolean onePhase)
           
 boolean connectionFailed(MessagingException me)
           
 MessagingBuffer createBuffer(int size)
           
 ClientMessage createClientMessage(boolean durable)
           
 ClientMessage createClientMessage(byte type, boolean durable)
           
 ClientMessage createClientMessage(byte type, boolean durable, long expiration, long timestamp, byte priority)
           
 ClientConsumer createConsumer(SimpleString queueName)
           
 ClientConsumer createConsumer(SimpleString queueName, SimpleString filterString)
           
 ClientConsumer createConsumer(SimpleString queueName, SimpleString filterString, boolean browseOnly)
           
 ClientConsumer createConsumer(SimpleString queueName, SimpleString filterString, int windowSize, int maxRate, boolean browseOnly)
           
 ClientConsumer createConsumer(java.lang.String queueName)
           
 ClientConsumer createConsumer(java.lang.String queueName, java.lang.String filterString)
           
 ClientConsumer createConsumer(java.lang.String queueName, java.lang.String filterString, boolean browseOnly)
           
 ClientConsumer createConsumer(java.lang.String queueName, java.lang.String filterString, int windowSize, int maxRate, boolean browseOnly)
           
 ClientProducer createProducer()
          Create a producer with no default address.
 ClientProducer createProducer(SimpleString address)
           
 ClientProducer createProducer(SimpleString address, int maxRate)
           
 ClientProducer createProducer(SimpleString address, int maxRate, boolean blockOnNonPersistentSend, boolean blockOnPersistentSend)
           
 ClientProducer createProducer(java.lang.String address)
           
 ClientProducer createProducer(java.lang.String address, int rate)
           
 ClientProducer createProducer(java.lang.String address, int maxRate, boolean blockOnNonPersistentSend, boolean blockOnPersistentSend)
           
 void createQueue(SimpleString address, SimpleString queueName, boolean durable)
          Queues created by this method are not temporary
 void createQueue(SimpleString address, SimpleString queueName, SimpleString filterString, boolean durable)
           
 void createQueue(java.lang.String address, java.lang.String queueName, boolean durable)
          Queues created by this method are not temporary
 void createQueue(java.lang.String address, java.lang.String queueName, java.lang.String filterString, boolean durable)
           
 void createTemporaryQueue(SimpleString address, SimpleString queueName)
           
 void createTemporaryQueue(SimpleString address, SimpleString queueName, SimpleString filter)
           
 void createTemporaryQueue(java.lang.String address, java.lang.String queueName)
           
 void createTemporaryQueue(java.lang.String address, java.lang.String queueName, java.lang.String filter)
           
 void deleteQueue(SimpleString queueName)
           
 void deleteQueue(java.lang.String queueName)
           
 void end(javax.transaction.xa.Xid xid, int flags)
           
 void expire(long consumerID, long messageID)
           
 void forget(javax.transaction.xa.Xid xid)
           
 RemotingConnection getConnection()
           
 java.lang.String getName()
           
 int getTransactionTimeout()
           
 int getVersion()
           
 javax.transaction.xa.XAResource getXAResource()
           
 boolean handleFailover(RemotingConnection backupConnection)
           
 void handleReceiveContinuation(long consumerID, SessionReceiveContinuationMessage continuation)
           
 void handleReceiveLargeMessage(long consumerID, SessionReceiveMessage message)
           
 void handleReceiveMessage(long consumerID, SessionReceiveMessage message)
           
 boolean isAutoCommitAcks()
           
 boolean isAutoCommitSends()
           
 boolean isBlockOnAcknowledge()
           
 boolean isClosed()
           
 boolean isSameRM(javax.transaction.xa.XAResource xares)
           
 boolean isXA()
           
 int prepare(javax.transaction.xa.Xid xid)
           
 SessionQueueQueryResponseMessage queueQuery(SimpleString queueName)
           
 javax.transaction.xa.Xid[] recover(int flags)
           
 void removeConsumer(ClientConsumerInternal consumer)
           
 boolean removeFailureListener(FailureListener listener)
           
 void removeProducer(ClientProducerInternal producer)
           
 void returnBlocking()
           
 void rollback()
           
 void rollback(boolean isLastMessageAsDelived)
           
 void rollback(javax.transaction.xa.Xid xid)
           
 void setForceNotSameRM(boolean force)
           
 void setSendAcknowledgementHandler(SendAcknowledgementHandler handler)
           
 boolean setTransactionTimeout(int seconds)
           
 void start()
           
 void start(javax.transaction.xa.Xid xid, int flags)
           
 void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INITIAL_MESSAGE_BODY_SIZE

public static final int INITIAL_MESSAGE_BODY_SIZE
See Also:
Constant Field Values
Constructor Detail

ClientSessionImpl

public ClientSessionImpl(ConnectionManager connectionManager,
                         java.lang.String name,
                         boolean xa,
                         boolean autoCommitSends,
                         boolean autoCommitAcks,
                         boolean preAcknowledge,
                         boolean blockOnAcknowledge,
                         boolean autoGroup,
                         int ackBatchSize,
                         int consumerWindowSize,
                         int consumerMaxRate,
                         int producerMaxRate,
                         boolean blockOnNonPersistentSend,
                         boolean blockOnPersistentSend,
                         int minLargeMessageSize,
                         RemotingConnection remotingConnection,
                         int version,
                         Channel channel,
                         java.util.concurrent.Executor executor)
                  throws MessagingException
Throws:
MessagingException
Method Detail

createQueue

public void createQueue(SimpleString address,
                        SimpleString queueName,
                        boolean durable)
                 throws MessagingException
Description copied from interface: ClientSession
Queues created by this method are not temporary

Specified by:
createQueue in interface ClientSession
Throws:
MessagingException

createQueue

public void createQueue(java.lang.String address,
                        java.lang.String queueName,
                        boolean durable)
                 throws MessagingException
Description copied from interface: ClientSession
Queues created by this method are not temporary

Specified by:
createQueue in interface ClientSession
Throws:
MessagingException

createQueue

public void createQueue(SimpleString address,
                        SimpleString queueName,
                        SimpleString filterString,
                        boolean durable)
                 throws MessagingException
Specified by:
createQueue in interface ClientSession
Throws:
MessagingException

createQueue

public void createQueue(java.lang.String address,
                        java.lang.String queueName,
                        java.lang.String filterString,
                        boolean durable)
                 throws MessagingException
Specified by:
createQueue in interface ClientSession
Throws:
MessagingException

createTemporaryQueue

public void createTemporaryQueue(SimpleString address,
                                 SimpleString queueName)
                          throws MessagingException
Specified by:
createTemporaryQueue in interface ClientSession
Throws:
MessagingException

createTemporaryQueue

public void createTemporaryQueue(java.lang.String address,
                                 java.lang.String queueName)
                          throws MessagingException
Specified by:
createTemporaryQueue in interface ClientSession
Throws:
MessagingException

createTemporaryQueue

public void createTemporaryQueue(SimpleString address,
                                 SimpleString queueName,
                                 SimpleString filter)
                          throws MessagingException
Specified by:
createTemporaryQueue in interface ClientSession
Throws:
MessagingException

createTemporaryQueue

public void createTemporaryQueue(java.lang.String address,
                                 java.lang.String queueName,
                                 java.lang.String filter)
                          throws MessagingException
Specified by:
createTemporaryQueue in interface ClientSession
Throws:
MessagingException

deleteQueue

public void deleteQueue(SimpleString queueName)
                 throws MessagingException
Specified by:
deleteQueue in interface ClientSession
Throws:
MessagingException

deleteQueue

public void deleteQueue(java.lang.String queueName)
                 throws MessagingException
Specified by:
deleteQueue in interface ClientSession
Throws:
MessagingException

queueQuery

public SessionQueueQueryResponseMessage queueQuery(SimpleString queueName)
                                            throws MessagingException
Specified by:
queueQuery in interface ClientSession
Throws:
MessagingException

bindingQuery

public SessionBindingQueryResponseMessage bindingQuery(SimpleString address)
                                                throws MessagingException
Specified by:
bindingQuery in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(SimpleString queueName)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(java.lang.String queueName)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(SimpleString queueName,
                                     SimpleString filterString)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(java.lang.String queueName,
                                     java.lang.String filterString)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(SimpleString queueName,
                                     SimpleString filterString,
                                     boolean browseOnly)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(java.lang.String queueName,
                                     java.lang.String filterString,
                                     boolean browseOnly)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(SimpleString queueName,
                                     SimpleString filterString,
                                     int windowSize,
                                     int maxRate,
                                     boolean browseOnly)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createConsumer

public ClientConsumer createConsumer(java.lang.String queueName,
                                     java.lang.String filterString,
                                     int windowSize,
                                     int maxRate,
                                     boolean browseOnly)
                              throws MessagingException
Specified by:
createConsumer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer()
                              throws MessagingException
Description copied from interface: ClientSession
Create a producer with no default address. Address must be specified every time a message is sent

Specified by:
createProducer in interface ClientSession
Throws:
MessagingException
See Also:
ClientProducer.send(SimpleString, org.jboss.messaging.core.message.Message)

createProducer

public ClientProducer createProducer(SimpleString address)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer(java.lang.String address)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer(SimpleString address,
                                     int maxRate)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer(java.lang.String address,
                                     int rate)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer(SimpleString address,
                                     int maxRate,
                                     boolean blockOnNonPersistentSend,
                                     boolean blockOnPersistentSend)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

createProducer

public ClientProducer createProducer(java.lang.String address,
                                     int maxRate,
                                     boolean blockOnNonPersistentSend,
                                     boolean blockOnPersistentSend)
                              throws MessagingException
Specified by:
createProducer in interface ClientSession
Throws:
MessagingException

getXAResource

public javax.transaction.xa.XAResource getXAResource()
Specified by:
getXAResource in interface ClientSession

commit

public void commit()
            throws MessagingException
Specified by:
commit in interface ClientSession
Throws:
MessagingException

rollback

public void rollback()
              throws MessagingException
Specified by:
rollback in interface ClientSession
Throws:
MessagingException

rollback

public void rollback(boolean isLastMessageAsDelived)
              throws MessagingException
Specified by:
rollback in interface ClientSession
Parameters:
isLastMessageAsDelived - the first message on deliveringMessage Buffer is considered as delivered
Throws:
MessagingException

createClientMessage

public ClientMessage createClientMessage(byte type,
                                         boolean durable,
                                         long expiration,
                                         long timestamp,
                                         byte priority)
Specified by:
createClientMessage in interface ClientSession

createClientMessage

public ClientMessage createClientMessage(byte type,
                                         boolean durable)
Specified by:
createClientMessage in interface ClientSession

createClientMessage

public ClientMessage createClientMessage(boolean durable)
Specified by:
createClientMessage in interface ClientSession

createBuffer

public MessagingBuffer createBuffer(int size)
Specified by:
createBuffer in interface ClientSessionInternal

isClosed

public boolean isClosed()
Specified by:
isClosed in interface ClientSession

isAutoCommitSends

public boolean isAutoCommitSends()
Specified by:
isAutoCommitSends in interface ClientSession

isAutoCommitAcks

public boolean isAutoCommitAcks()
Specified by:
isAutoCommitAcks in interface ClientSession

isBlockOnAcknowledge

public boolean isBlockOnAcknowledge()
Specified by:
isBlockOnAcknowledge in interface ClientSession

isXA

public boolean isXA()
Specified by:
isXA in interface ClientSession

start

public void start()
           throws MessagingException
Specified by:
start in interface ClientSession
Throws:
MessagingException

stop

public void stop()
          throws MessagingException
Specified by:
stop in interface ClientSession
Throws:
MessagingException

addFailureListener

public void addFailureListener(FailureListener listener)
Specified by:
addFailureListener in interface ClientSession

removeFailureListener

public boolean removeFailureListener(FailureListener listener)
Specified by:
removeFailureListener in interface ClientSession

getVersion

public int getVersion()
Specified by:
getVersion in interface ClientSession

getName

public java.lang.String getName()
Specified by:
getName in interface ClientSessionInternal

acknowledge

public void acknowledge(long consumerID,
                        long messageID)
                 throws MessagingException
Specified by:
acknowledge in interface ClientSessionInternal
Throws:
MessagingException

expire

public void expire(long consumerID,
                   long messageID)
            throws MessagingException
Specified by:
expire in interface ClientSessionInternal
Throws:
MessagingException

addConsumer

public void addConsumer(ClientConsumerInternal consumer)
Specified by:
addConsumer in interface ClientSessionInternal

addProducer

public void addProducer(ClientProducerInternal producer)
Specified by:
addProducer in interface ClientSessionInternal

removeConsumer

public void removeConsumer(ClientConsumerInternal consumer)
                    throws MessagingException
Specified by:
removeConsumer in interface ClientSessionInternal
Throws:
MessagingException

removeProducer

public void removeProducer(ClientProducerInternal producer)
Specified by:
removeProducer in interface ClientSessionInternal

handleReceiveMessage

public void handleReceiveMessage(long consumerID,
                                 SessionReceiveMessage message)
                          throws java.lang.Exception
Specified by:
handleReceiveMessage in interface ClientSessionInternal
Throws:
java.lang.Exception

handleReceiveLargeMessage

public void handleReceiveLargeMessage(long consumerID,
                                      SessionReceiveMessage message)
                               throws java.lang.Exception
Specified by:
handleReceiveLargeMessage in interface ClientSessionInternal
Throws:
java.lang.Exception

handleReceiveContinuation

public void handleReceiveContinuation(long consumerID,
                                      SessionReceiveContinuationMessage continuation)
                               throws java.lang.Exception
Specified by:
handleReceiveContinuation in interface ClientSessionInternal
Throws:
java.lang.Exception

close

public void close()
           throws MessagingException
Specified by:
close in interface ClientSession
Throws:
MessagingException

cleanUp

public void cleanUp()
             throws java.lang.Exception
Specified by:
cleanUp in interface ClientSessionInternal
Throws:
java.lang.Exception

setSendAcknowledgementHandler

public void setSendAcknowledgementHandler(SendAcknowledgementHandler handler)
Specified by:
setSendAcknowledgementHandler in interface ClientSession

handleFailover

public boolean handleFailover(RemotingConnection backupConnection)
Specified by:
handleFailover in interface ClientSessionInternal

returnBlocking

public void returnBlocking()
Specified by:
returnBlocking in interface ClientSessionInternal

commandConfirmed

public void commandConfirmed(Packet packet)
Specified by:
commandConfirmed in interface CommandConfirmationHandler

commit

public void commit(javax.transaction.xa.Xid xid,
                   boolean onePhase)
            throws javax.transaction.xa.XAException
Specified by:
commit in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

end

public void end(javax.transaction.xa.Xid xid,
                int flags)
         throws javax.transaction.xa.XAException
Specified by:
end in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

forget

public void forget(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
forget in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

getTransactionTimeout

public int getTransactionTimeout()
                          throws javax.transaction.xa.XAException
Specified by:
getTransactionTimeout in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

isSameRM

public boolean isSameRM(javax.transaction.xa.XAResource xares)
                 throws javax.transaction.xa.XAException
Specified by:
isSameRM in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

prepare

public int prepare(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
prepare in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

recover

public javax.transaction.xa.Xid[] recover(int flags)
                                   throws javax.transaction.xa.XAException
Specified by:
recover in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

rollback

public void rollback(javax.transaction.xa.Xid xid)
              throws javax.transaction.xa.XAException
Specified by:
rollback in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

setTransactionTimeout

public boolean setTransactionTimeout(int seconds)
                              throws javax.transaction.xa.XAException
Specified by:
setTransactionTimeout in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

start

public void start(javax.transaction.xa.Xid xid,
                  int flags)
           throws javax.transaction.xa.XAException
Specified by:
start in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

connectionFailed

public boolean connectionFailed(MessagingException me)
Specified by:
connectionFailed in interface FailureListener

setForceNotSameRM

public void setForceNotSameRM(boolean force)

getConnection

public RemotingConnection getConnection()
Specified by:
getConnection in interface ClientSessionInternal


Copyright © 2006 JBoss Inc. All Rights Reserved.