Class MessageBrokerChannelListenerBinding
- Namespace
- LfrlAnvil.MessageBroker.Server
- Assembly
- LfrlAnvil.MessageBroker.Server.dll
Represents a message broker channel binding for a listener, which allows clients to listen to messages published through channels.
public sealed class MessageBrokerChannelListenerBinding
- Inheritance
-
MessageBrokerChannelListenerBinding
- Inherited Members
Properties
AreAcksEnabled
Specifies whether the Client is expected to send ACK or negative ACK to the Queue in order to confirm message notification.
public bool AreAcksEnabled { get; }
Property Value
Channel
MessageBrokerChannel instance to which the Client is bound to as a listener.
public MessageBrokerChannel Channel { get; }
Property Value
Client
MessageBrokerRemoteClient instance to which this listener belongs to.
public MessageBrokerRemoteClient Client { get; }
Property Value
DeadLetterCapacityHint
Specifies how many messages intended for this listener can be stored at most by the Queue's dead letter. Actual capacity may be different due to the state of the Queue and other listeners bound to it.
public int DeadLetterCapacityHint { get; }
Property Value
FilterExpression
Specifies message filter expression.
public string? FilterExpression { get; }
Property Value
IsEphemeral
Specifies whether the listener is ephemeral.
public bool IsEphemeral { get; }
Property Value
MaxRedeliveries
Specifies how many times the Queue will attempt to automatically send a message notification redelivery when the Client fails to respond with either an ACK or a negative ACK in time (see MinAckTimeout), before giving up.
public int MaxRedeliveries { get; }
Property Value
MaxRetries
Specifies how many times the Queue will attempt to automatically send a message notification retry when the Client responds with a negative ACK, before giving up.
public int MaxRetries { get; }
Property Value
MinAckTimeout
Specifies the minimum amount of time that the Queue will wait for the Client to send either an ACK or a negative ACK before attempting a message notification redelivery. Actual ACK timeout may be different due to the state of the Queue and other listeners bound to it.
public Duration MinAckTimeout { get; }
Property Value
MinDeadLetterRetention
Specifies the minimum retention period for messages intended for this listener stored in the Queue's dead letter. Actual retention period may be different due to the state of the Queue and other listeners bound to it.
public Duration MinDeadLetterRetention { get; }
Property Value
PrefetchHint
Specifies how many messages intended for this listener can be sent by the Queue to the Client at the same time.
public int PrefetchHint { get; }
Property Value
Queue
MessageBrokerQueue instance to which messages intended for this listener get enqueued into.
public MessageBrokerQueue Queue { get; }
Property Value
RetryDelay
Specifies the delay between the Queue successfully processing negative ACK sent by the Client and the Queue sending a message notification retry.
public Duration RetryDelay { get; }
Property Value
State
Current listener's state.
public MessageBrokerChannelListenerBindingState State { get; }
Property Value
Remarks
See MessageBrokerChannelListenerBindingState for more information.
Methods
DeleteAsync()
Deletes this listener from the server.
public ValueTask DeleteAsync()
Returns
- ValueTask
A task that represents the asynchronous delete operation.
Exceptions
- MessageBrokerServerException
- MessageBrokerRemoteClientException
When this listener is in Created state.
ToString()
Returns a string representation of this MessageBrokerChannelListenerBinding instance.
[Pure]
public override string ToString()
Returns
- string
String representation.