Show / Hide Table of Contents

    Namespace Silverback.Messaging.Broker

    Classes

    BrokerCollection

    Holds a reference to all the registered IBroker implementations and is able to resolve the right instance according to the IEndpoint type.

    BrokerConnectorService

    Automatically connects the message brokers when the application starts and disconnects them when the application is being stopped.

    Broker<TProducerEndpoint, TConsumerEndpoint>

    The base class for all IBroker implementations.

    Consumer

    Consumes an endpoint and invokes a callback delegate when a message is received.

    Consumer<TBroker, TEndpoint, TIdentifier>

    Consumes an endpoint and invokes a callback delegate when a message is received.

    KafkaBroker

    An IBroker implementation for Apache Kafka.

    KafkaConsumer

    Consumes an endpoint and invokes a callback delegate when a message is received.

    KafkaConsumerLocalTimeoutMonitor

    Handles the consumer error callback and reverts the consumer Ready status to Connected when the local poll timeout is exceeded. The consumer should eventually reconnect but this allows to accurately track its status.

    KafkaOffset

    Represents the position of the message in a partition.

    KafkaProducer

    Produces to an endpoint.

    KafkaTransactionalProducer

    Produces to an endpoint.

    MqttBroker

    An IBroker implementation for MQTT.

    MqttConsumer

    Consumes an endpoint and invokes a callback delegate when a message is received.

    MqttMessageIdentifier

    The MQTT broker doesn't provide any message identifier, so the identifier is either the MessageId header value or a client-side generated Guid.

    MqttProducer

    Produces to an endpoint.

    ProduceException

    The exception that is thrown by the IProducer when the message cannot be produced or the message broker didn't acknowledge it.

    Producer

    Produces to an endpoint.

    Producer<TBroker, TEndpoint>

    Produces to an endpoint.

    RabbitBroker

    An IBroker implementation for RabbitMQ.

    RabbitConsumer

    Consumes an endpoint and invokes a callback delegate when a message is received.

    RabbitDeliveryTag

    Represents the unique message identifier assigned by the message broker.

    RabbitProducer

    Produces to an endpoint.

    Interfaces

    IBroker

    The basic interface to interact with the message broker.

    IBrokerCollection

    Holds a reference to all the registered IBroker implementations and is able to resolve the right instance according to the IEndpoint type.

    IBrokerMessageIdentifier

    Represents the primary identifier used by the message broker to recognize the exact message.

    It can represent a Kafka offset, a RabbitMQ delivery tag or other similar constructs.

    The IBrokerMessageOffset interface should be implemented whenever possible to allow the exactly-one delivery using the OffsetStoreExactlyOnceStrategy.

    If the message broker doesn't provide any message identifier, a local one can be created (e.g. Guid.NewGuid()) but this will prevent some features to work properly.

    IBrokerMessageOffset

    Represents the primary identifier used by the message broker to recognize the exact message. This is different than the base IBrokerMessageIdentifier because it has a ordinal meaning and is comparable.

    It can represent a Kafka offset or another similar construct.

    Being able to compare the identifiers (offsets) allows the exactly-one delivery using the OffsetStoreExactlyOnceStrategy and for it to work properly the offsets have to be universally comparable (across restarts and across multiple instances, for a given Key).

    IConsumer

    Consumes an endpoint and invokes a callback delegate when a message is received.

    IConsumerStatusChange

    Encapsulates the information about the consumer status transition.

    IConsumerStatusInfo

    Encapsulates the status details and basic statistics of an IConsumer.

    IProducer

    Produces to an endpoint.

    Enums

    ConsumerStatus

    The possible states of the IConsumer as exposed in the IConsumerStatusInfo.

    GitHub E-Mail
    ↑ Back to top © 2020 Sergio Aquilini