Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.rabbitmq.client
Interface Consumer

All Known Implementing Classes:
  DefaultConsumer, QueueingConsumer

    public interface Consumer

Interface for application callback objects to receive notifications and messages from a queue by subscription. Most implementations will subclass `DefaultConsumer`.

The methods of this interface are invoked in a dispatch thread which is separate from the `Connection`'s thread. This allows `Consumer`s to call `Channel` or `Connection` methods without causing a deadlock.

The `Consumer`s on a particular `Channel` are invoked serially on one or more dispatch threads. `Consumer`s should avoid executing long-running code because this will delay dispatch of messages to other `Consumer`s on the same `Channel`.

See Also:
  `Channel.basicConsume(String, boolean, String, boolean, boolean, java.util.Map, Consumer)`, `Channel.basicCancel(java.lang.String)`

Method Summary
`void` | `handleCancel(java.lang.String consumerTag)` Called when the consumer is cancelled for reasons other than by a call to `Channel.basicCancel(java.lang.String)`.
`void` | `handleCancelOk(java.lang.String consumerTag)` Called when the consumer is cancelled by a call to `Channel.basicCancel(java.lang.String)`.
`void` | `handleConsumeOk(java.lang.String consumerTag)` Called when the consumer is registered by a call to any of the `Channel.basicConsume(java.lang.String, com.rabbitmq.client.Consumer)` methods.
`void` | `handleDelivery(java.lang.String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body)` Called when a `basic.deliver` is received for this consumer.
`void` | `handleRecoverOk(java.lang.String consumerTag)` Called when a `basic.recover-ok` is received in reply to a `basic.recover`.
`void` | `handleShutdownSignal(java.lang.String consumerTag, ShutdownSignalException sig)` Called when either the channel or the underlying connection has been shut down.

Method Detail

### handleConsumeOk

    void handleConsumeOk(java.lang.String consumerTag)

  Called when the consumer is registered by a call to any of the `Channel.basicConsume(java.lang.String, com.rabbitmq.client.Consumer)` methods.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer

### handleCancelOk

    void handleCancelOk(java.lang.String consumerTag)

  Called when the consumer is cancelled by a call to `Channel.basicCancel(java.lang.String)`.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer

### handleCancel

    void handleCancel(java.lang.String consumerTag)
                      throws java.io.IOException

  Called when the consumer is cancelled for reasons other than by a call to `Channel.basicCancel(java.lang.String)`. For example, the queue has been deleted. See `handleCancelOk(java.lang.String)` for notification of consumer cancellation due to `Channel.basicCancel(java.lang.String)`.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer
  Throws:
    `java.io.IOException`

### handleShutdownSignal

    void handleShutdownSignal(java.lang.String consumerTag,
                              ShutdownSignalException sig)

  Called when either the channel or the underlying connection has been shut down.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer
    `sig` - a `ShutdownSignalException` indicating the reason for the shut down

### handleRecoverOk

    void handleRecoverOk(java.lang.String consumerTag)

  Called when a `basic.recover-ok` is received in reply to a `basic.recover`. All messages received before this is invoked that haven't been ack'ed will be re-delivered. All messages received afterwards won't be.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer

### handleDelivery

    void handleDelivery(java.lang.String consumerTag,
                        Envelope envelope,
                        AMQP.BasicProperties properties,
                        byte[] body)
                        throws java.io.IOException

  Called when a `basic.deliver` is received for this consumer.

  Parameters:
    `consumerTag` - the consumer tag associated with the consumer
    `envelope` - packaging data for the message
    `properties` - content header data for the message
    `body` - the message body (opaque, client-specific byte array)
  Throws:
    `java.io.IOException` - if the consumer encounters an I/O error while processing the message
  See Also:
    `Envelope`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD