Namespace RabbitMQ.AMQP.Client
Classes
- AmqpMessageRejectedException
Exception thrown when a message is rejected by the broker. Available when a PublishOutcome has state Rejected and the broker provided rejection details (requires RabbitMQ 4.3 or later).
- BackOffDelayPolicy
Class for the backoff delay policy. Used during the recovery of the connection.
- BadRequestException
Thrown when management response is code 400, bad request.
- ByteCapacity
Class for specifying a binary size, with units
- ConnectionException
Exception related to IConnection
- ConsumerException
Exception returned during consumer operations. See IConsumer.
- DefaultAffinity
DefaultAffinity is the default implementation of the IAffinity interface.
- IConsumerBuilder.ListenerContext
ListenerContext is a helper class that holds the contexts for the listener
- InvalidCodeException
Thrown when management response code is not expected.
- ModelException
Thrown when management response code or correlation ID mismatch.
- PreconditionFailedException
Thrown when management response is "precondition failed".
- PublishOutcome
Represents the outcome of a publish operation. It contains the state of the outcome and an error if the outcome is not successful.
- PublishResult
Represents the result of a publish operation. It contains the PublishOutcome and the original IMessage.
- RecoveryConfiguration
RecoveryConfiguration is a class that represents the configuration of the recovery of the topology. It is used to configure the recovery of the topology of the server after a connection is established in case of a reconnection The RecoveryConfiguration can be disabled or enabled. If RecoveryConfiguration._active is disabled, the reconnect mechanism will not be activated. If RecoveryConfiguration._topology is disabled, the recovery of the topology will not be activated.
- ResourceNotFoundException
Thrown when management response code is 404, not found.
Interfaces
- IAffinity
IAffinity the interface to define node affinity for a connection. It is used to find the node that has the queue for the given operation.
- IBackOffDelayPolicy
Interface for the backoff delay policy. Used during the recovery of the connection.
- IConsumer
API to consume messages from a RabbitMQ queue.
Instances are configured and created with a IConsumerBuilder.
See ConsumerBuilder() and IConsumerBuilder.
- IConsumerBuilder.IJmsOptions
Options for consumers of JMS queues.
- IConsumerBuilder.IQuorumOptions
Options for consumers of quorum queues.
- IConsumerBuilder.IStreamFilterOptions
Filter options for support of AMQP filter expressions.
AMQP filter expressions are supported only with streams. This a different filtering mechanism from stream filtering. Both mechanisms can be used together. Requires RabbitMQ 4.1 or more.
- IDelayedQueueSpecification
Optional arguments for delayed queues (
x-queue-type: delayed). Delayed queues are only available on Tanzu RabbitMQ 4.x or later.
- IEntityInfoSpecification<T>
Generic interface for managing entities with result of type T
- IEntitySpecification
Generic interface for specifying entities without result
- IEnvironment
The IEnvironment is the main entry point to a node or a cluster of nodes.
The CreateConnectionAsync(ConnectionSettings) and parameterless CreateConnectionAsync() methods allow creating IConnection instances. Connection affinity can be configured via Affinity, typically using a
ConnectionSettingsBuilder.Affinity(...)call when constructing the settings. An application is expected to maintain a single IEnvironment instance and to close that instance upon application exit.IEnvironment instances are expected to be thread-safe.
- IJmsQueueSpecification
Optional arguments for JMS queues (
x-queue-type: jms).
- IManagement
The IManagement interface is used to manage the AMQP 0.9.1 model topology (exchanges, queues, and bindings).
- IPublisher
Interface for publishing messages to an AMQP broker. Implementations of this interface are expected to be thread-safe.
- IRecoveryConfiguration
Interface for the recovery configuration.
- IRequester
IRpcClient is the interface for an RPC client. See also IResponder and IRequesterBuilder
- IRequesterBuilder
IRequesterBuilder is the interface for creating an RPC client. See also IRequester and IResponderBuilder
- IResponder
IResponder interface for creating an RPC server. The RPC is simulated by sending a request message and receiving a reply message. Where the client sends the queue where wants to receive the reply. RPC client ---> request queue ---> RPC server ---> reply queue ---> RPC client See also IRequester
- IResponderBuilder
IRpcServerBuilder is the interface for creating an RPC server. The RPC server consumes requests from a queue and sends replies to a reply queue. See also IResponder and IRequesterBuilder
Enums
- ConsumerSettleStrategy
ConsumerSettleStrategy defines the Consumer Settle available for Classic and Quorum queue consumers.
- OutcomeState
Represents the status of a publish operation. See AMQP Outcomes.
- QuorumQueueDelayedRetryType
Conditions for delaying a message when it is returned to a quorum queue.
The delay is calculated with linear back-off based on the message's delivery count:
min(min_delay * delivery_count, max_delay). A per-message explicit delivery time can also be set by adding thex-opt-delivery-timeannotation (a Unix timestamp in milliseconds) when requeuing a message with annotations.Delayed retry support for quorum queues is available as of RabbitMQ 4.3.
Delegates
- ConnectionTransportFactory
Produces the connected, plain (not encrypted) duplex stream a connection will run on, in place of the socket the library would otherwise open itself.
This is the seam for reaching a broker that is not directly dialable - most commonly a socket tunnelled through an HTTP CONNECT proxy. TLS is not the factory's job: when the scheme is
amqpsthe library negotiates TLS over the returned stream using TlsSettings, and validates the broker certificate against Host. The certificate is therefore checked against the broker's real name, not against the address the factory had to dial.The factory is invoked once per connection attempt, including every recovery attempt, so it must return a freshly connected stream each time. Ownership of the stream passes to the connection, which disposes it when the connection closes.
- DeliveryReleaseHandler
Raised when the delivery is released by the broker (AMQP 1.0
releasedoutcome) and the message is requeued to be delivered again. For example: Consumer timeout feature in RabbitMQ 4.3+ can trigger this when a message is not settled within the configured timeout.
- MessageHandler
Delegate to process an incoming message.
- ResponderHandler
Event handler for handling RPC requests.
- SingleActiveConsumerStateHandler
Notifies that this consumer's single-active-consumer role on a quorum queue may have changed, using the broker's
rabbitmq:activelink-state property delivered on AMQP 1.0 FLOW.