Class RabbitExchangeConsumerEndpoint
Represents an exchange to consume from.
Inheritance
Inherited Members
Namespace: Silverback.Messaging
Assembly: Silverback.Integration.RabbitMQ.dll
Syntax
public sealed class RabbitExchangeConsumerEndpoint : RabbitConsumerEndpoint, IConsumerEndpoint, IEndpoint, IEquatable<RabbitExchangeConsumerEndpoint>
Constructors
| Improve this doc View sourceRabbitExchangeConsumerEndpoint(String)
Initializes a new instance of the RabbitExchangeConsumerEndpoint class.
Declaration
public RabbitExchangeConsumerEndpoint(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the exchange. |
Properties
| Improve this doc View sourceExchange
Gets or sets the exchange configuration.
Declaration
public RabbitExchangeConfig Exchange { get; set; }
Property Value
Type | Description |
---|---|
RabbitExchangeConfig |
QueueName
Gets or sets the desired queue name. If null or empty a random name will be generated by RabbitMQ.
Declaration
public string QueueName { get; set; }
Property Value
Type | Description |
---|---|
System.String |
RoutingKey
Gets or sets the routing key (aka binding key) to be used to bind with the exchange.
Declaration
public string RoutingKey { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Methods
| Improve this doc View sourceEquals(RabbitExchangeConsumerEndpoint)
Declaration
public bool Equals(RabbitExchangeConsumerEndpoint other)
Parameters
Type | Name | Description |
---|---|---|
RabbitExchangeConsumerEndpoint | other |
Returns
Type | Description |
---|---|
System.Boolean |
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
Type | Name | Description |
---|---|---|
System.Object | obj |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
System.Int32 |
Overrides
GetUniqueConsumerGroupName()
Gets a unique name for the consumer group (e.g. Kafka's consumer group id). This value (joint with the endpoint name) will be used for example to ensure the exactly-once delivery.
Declaration
public override string GetUniqueConsumerGroupName()
Returns
Type | Description |
---|---|
System.String | Returns the unique name for the consumer group. |
Overrides
Remarks
It's not enough to use the endpoint name, since the same topic could be consumed by multiple consumer groups within the same process and/or using the same database to store the information needed to ensure the exactly-once delivery.
Validate()
Validates the endpoint configuration and throws an EndpointConfigurationException if not valid.
Declaration
public override void Validate()