org.apache.qpid.client
Class BasicMessageConsumer_0_10
java.lang.Object
org.apache.qpid.client.Closeable
org.apache.qpid.client.BasicMessageConsumer<UnprocessedMessage_0_10>
org.apache.qpid.client.BasicMessageConsumer_0_10
- All Implemented Interfaces:
- MessageConsumer
public class BasicMessageConsumer_0_10
- extends BasicMessageConsumer<UnprocessedMessage_0_10>
This is a 0.10 message consumer.
Field Summary |
protected org.slf4j.Logger |
_logger
This class logger |
Fields inherited from class org.apache.qpid.client.BasicMessageConsumer |
_acknowledgeMode, _channelId, _connection, _consumerTag, _destination, _exclusive, _messageFactory, _messageSelector, _protocolHandler, _session, _synchronousQueue |
Constructor Summary |
protected |
BasicMessageConsumer_0_10(int channelId,
AMQConnection connection,
AMQDestination destination,
String messageSelector,
boolean noLocal,
MessageFactoryRegistry messageFactory,
AMQSession session,
AMQProtocolHandler protocolHandler,
org.apache.qpid.framing.FieldTable arguments,
int prefetchHigh,
int prefetchLow,
boolean exclusive,
int acknowledgeMode,
boolean noConsume,
boolean autoClose)
|
Methods inherited from class org.apache.qpid.client.BasicMessageConsumer |
acknowledgeDelivered, addBindingKey, clearReceiveQueue, close, close, debugIdentity, drainReceiverQueueAndRetrieveDeliveryTags, failedOverPre, getAcknowledgeMode, getArguments, getConsumerTag, getDestination, getLastDelivered, getMessageListener, getMessageSelector, getPrefetch, getPrefetchHigh, getPrefetchLow, getQueuename, getSession, isAutoClose, isMessageListenerSet, isNoConsume, isNoLocal, isReceiving, markClosed, notifyCloseMessage, notifyError, preDeliver, receive, receive, receiveNoWait, rollback, setQueuename |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_logger
protected final org.slf4j.Logger _logger
- This class logger
BasicMessageConsumer_0_10
protected BasicMessageConsumer_0_10(int channelId,
AMQConnection connection,
AMQDestination destination,
String messageSelector,
boolean noLocal,
MessageFactoryRegistry messageFactory,
AMQSession session,
AMQProtocolHandler protocolHandler,
org.apache.qpid.framing.FieldTable arguments,
int prefetchHigh,
int prefetchLow,
boolean exclusive,
int acknowledgeMode,
boolean noConsume,
boolean autoClose)
throws JMSException
- Throws:
JMSException
setConsumerTag
public void setConsumerTag(int consumerTag)
- Overrides:
setConsumerTag
in class BasicMessageConsumer<UnprocessedMessage_0_10>
getConsumerTagString
public String getConsumerTagString()
notifyMessage
public void notifyMessage(AbstractJMSMessage jmsMessage)
- This is invoked by the session thread when emptying the session message queue.
We first check if the message is valid (match the selector) and then deliver it to the
message listener or to the sync consumer queue.
- Overrides:
notifyMessage
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Parameters:
jmsMessage
- this message has already been processed so can't redo preDeliver
sendCancel
void sendCancel()
throws org.apache.qpid.AMQException
- This method is invoked when this consumer is stopped.
It tells the broker to stop delivering messages to this consumer.
- Specified by:
sendCancel
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
org.apache.qpid.AMQException
notifyMessage
void notifyMessage(UnprocessedMessage_0_10 messageFrame)
- Description copied from class:
BasicMessageConsumer
- Called from the AMQSession when a message has arrived for this consumer. This methods handles both the case of a
message listener or a synchronous receive() caller.
- Overrides:
notifyMessage
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Parameters:
messageFrame
- the raw unprocessed mesage
preApplicationProcessing
protected void preApplicationProcessing(AbstractJMSMessage jmsMsg)
throws JMSException
- Overrides:
preApplicationProcessing
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
JMSException
createJMSMessageFromUnprocessedMessage
public AbstractJMSMessage createJMSMessageFromUnprocessedMessage(AMQMessageDelegateFactory delegateFactory,
UnprocessedMessage_0_10 msg)
throws Exception
- Specified by:
createJMSMessageFromUnprocessedMessage
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
Exception
setMessageListener
public void setMessageListener(MessageListener messageListener)
throws JMSException
- Specified by:
setMessageListener
in interface MessageConsumer
- Overrides:
setMessageListener
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
JMSException
failedOverPost
public void failedOverPost()
- Overrides:
failedOverPost
in class BasicMessageConsumer<UnprocessedMessage_0_10>
getMessageFromQueue
public Object getMessageFromQueue(long l)
throws InterruptedException
- When messages are not prefetched we need to request a message from the
broker.
Note that if the timeout is too short a message may be queued in _synchronousQueue until
this consumer closes or request it.
- Overrides:
getMessageFromQueue
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Parameters:
l
-
- Returns:
-
- Throws:
InterruptedException
postDeliver
void postDeliver(AbstractJMSMessage msg)
throws JMSException
- Overrides:
postDeliver
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
JMSException
receiveBrowse
Message receiveBrowse()
throws JMSException
- Specified by:
receiveBrowse
in class BasicMessageConsumer<UnprocessedMessage_0_10>
- Throws:
JMSException
rollbackPendingMessages
public void rollbackPendingMessages()
- Overrides:
rollbackPendingMessages
in class BasicMessageConsumer<UnprocessedMessage_0_10>
isExclusive
public boolean isExclusive()
- Overrides:
isExclusive
in class BasicMessageConsumer<UnprocessedMessage_0_10>
Licensed to the Apache Software Foundation