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

java.lang.Object
  extended by org.jboss.messaging.core.client.impl.ClientConsumerImpl
All Implemented Interfaces:
ClientConsumer, ClientConsumerInternal

public class ClientConsumerImpl
extends java.lang.Object
implements ClientConsumerInternal

Version:
$Revision: 3603 $ $Id: ClientConsumerImpl.java 3603 2008-01-21 18:49:20Z timfox $
Author:
Tim Fox, Ovidiu Feodorov, Jeff Mesnil, Clebert Suconic

Constructor Summary
ClientConsumerImpl(ClientSessionInternal session, long targetID, long clientTargetID, java.util.concurrent.ExecutorService sessionExecutor, RemotingConnection remotingConnection, int clientWindowSize, boolean direct)
          Create a ClientConsumerImpl.
 
Method Summary
 void close()
           
 long getClientTargetID()
           
 MessageHandler getMessageHandler()
           
 void handleMessage(ClientMessage message)
           
 boolean isClosed()
           
 ClientMessage receive()
           
 ClientMessage receive(long timeout)
           
 ClientMessage receiveImmediate()
           
 void recover(long lastDeliveryID)
           
 void setMessageHandler(MessageHandler handler)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClientConsumerImpl

public ClientConsumerImpl(ClientSessionInternal session,
                          long targetID,
                          long clientTargetID,
                          java.util.concurrent.ExecutorService sessionExecutor,
                          RemotingConnection remotingConnection,
                          int clientWindowSize,
                          boolean direct)
Create a ClientConsumerImpl. The targetID is the same for the consumer on the client side and on the server side. The targetID is not globally unique: the same ID can be used by 2 different servers. This is not an issue since the scope of the targetID remains within the RemotingConnection (and its PacketDispatcher) to a single server.

Method Detail

receive

public ClientMessage receive(long timeout)
                      throws MessagingException
Specified by:
receive in interface ClientConsumer
Throws:
MessagingException

receive

public ClientMessage receive()
                      throws MessagingException
Specified by:
receive in interface ClientConsumer
Throws:
MessagingException

receiveImmediate

public ClientMessage receiveImmediate()
                               throws MessagingException
Specified by:
receiveImmediate in interface ClientConsumer
Throws:
MessagingException

getMessageHandler

public MessageHandler getMessageHandler()
                                 throws MessagingException
Specified by:
getMessageHandler in interface ClientConsumer
Throws:
MessagingException

setMessageHandler

public void setMessageHandler(MessageHandler handler)
                       throws MessagingException
Specified by:
setMessageHandler in interface ClientConsumer
Throws:
MessagingException

close

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

isClosed

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

getClientTargetID

public long getClientTargetID()
Specified by:
getClientTargetID in interface ClientConsumerInternal

handleMessage

public void handleMessage(ClientMessage message)
                   throws java.lang.Exception
Specified by:
handleMessage in interface ClientConsumerInternal
Throws:
java.lang.Exception

recover

public void recover(long lastDeliveryID)
Specified by:
recover in interface ClientConsumerInternal


Copyright © 2006 JBoss Inc. All Rights Reserved.