API Diff between 2.0.0-beta7 and 2.0.0-beta12
158 Additions
48 Removals
RabbitMQ.Abstraction
RabbitMQ.Abstraction.Messaging
-
public abstract class AbstractRabbitMQConsumer : IQueueConsumer, IDisposable
- protected readonly ConnectionFactory _connectionFactory
- protected readonly IModel _model
- protected readonly IConnection ConnectionConsumer
- protected readonly IConnection ConnectionPublisher
- protected readonly RabbitMQConnectionPool ConnectionPool
- protected AbstractRabbitMQConsumer(ConnectionFactory connectionFactory, IConnection connectionConsumer, IConnection connectionPublisher, string queueName, ISerializer serializer = null, ILogger logger = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ushort prefetchCount = 1)
- protected IRabbitMQConnection ConsumerConnection { get; }
- protected AbstractRabbitMQConsumer(RabbitMQConnectionPool connectionPool, string queueName, ISerializer serializer = null, ILogger logger = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ushort prefetchCount = 1)
- public Task<uint> GetConsumerCountAsync()
- public Task<uint> GetMessageCountAsync()
- public Task StartAsync(CancellationToken cancellationToken)
- public void Stop()
- public Task<Task> StartAsync(CancellationToken cancellationToken)
- public Task Stop()
- protected bool TryScaleDown()
-
public class RabbitMQBatchConsumer<T> : AbstractRabbitMQConsumer
- public RabbitMQBatchConsumer(ILogger logger, ConnectionFactory connectionFactory, IConnection connection, IConnection connectionPublisher, string queueName, IBatchProcessingWorker<T> batchProcessingWorker, ISerializer serializer = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null)
- public RabbitMQBatchConsumer(RabbitMQConnectionPool connectionPool, string queueName, IBatchProcessingWorker<T> batchProcessingWorker, ISerializer serializer = null, ILogger logger = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null)
-
public class RabbitMQBatchConsumerWorker<T> : IQueueConsumerWorker
- public RabbitMQBatchConsumerWorker(ILogger logger, IConnection connection, string queueName, IModel model, IBatchProcessingWorker<T> batchProcessingWorker, IMessageRejectionHandler messageRejectionHandler, ISerializer serializer)
- public RabbitMQBatchConsumerWorker(IConnection connection, string queueName, IBatchProcessingWorker<T> batchProcessingWorker, IMessageRejectionHandler messageRejectionHandler, ISerializer serializer, Func<bool> scaleCallbackFunc)
-
public class RabbitMQClient : IQueueClient, IDisposable
- public RabbitMQClient(string connectionString, ISerializer serializer = null, ILogger logger = null, uint connectionPoolSize = 1, uint modelPoolSize = 1, ushort heartbeat = 60)
- public RabbitMQClient(string hostName, int port, string userName, string password, string virtualHost, ISerializer serializer = null, ILogger logger = null, uint connectionPoolSize = 1, uint modelPoolSize = 1, ushort heartbeat = 60)
- public RabbitMQClient(ConnectionFactory connectionFactory, ISerializer serializer = null, ILogger logger = null)
- public RabbitMQClient(string connectionString, ISerializer serializer = null, ILogger logger = null, uint connectionPoolSize = 1, uint modelPoolSize = 1)
- public RabbitMQClient(string hostName, int port, string userName, string password, string virtualHost, ISerializer serializer = null, ILogger logger = null, uint connectionPoolSize = 1, uint modelPoolSize = 1)
- public RabbitMQClient(ConnectionFactory connectionFactory, ISerializer serializer = null, ILogger logger = null, uint connectionPoolSize = 1, uint modelPoolSize = 1)
- public RabbitMQClient(RabbitMQConnectionPool connectionPool, ISerializer serializer = null, ILogger logger = null)
- public Task BatchPublishAsync<T>(IModel model, string exchangeName, string routingKey, IEnumerable<T> contentList, byte? priority = default)
- public Task PublishAsync<T>(IModel model, string exchangeName, string routingKey, T content, byte? priority = default)
-
public class RabbitMQConnection : IRabbitMQConnection, IConnection, NetworkConnection, IDisposable
-
public class RabbitMQConnectionPool : IDisposable
-
public class RabbitMQConsumer<T> : AbstractRabbitMQConsumer
- public RabbitMQConsumer(ILogger logger, IQueueClient queueClient, ConnectionFactory connectionFactory, IConnection connectionConsumer, IConnection connectionPublisher, string queueName, IMessageProcessingWorker<T> messageProcessingWorker, ISerializer serializer = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ushort prefetchCount = 1)
- public RabbitMQConsumer(RabbitMQConnectionPool connectionPool, string queueName, IMessageProcessingWorker<T> messageProcessingWorker, ISerializer serializer = null, ILogger logger = null, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ushort prefetchCount = 1)
-
public class RabbitMQConsumerContext
-
public class RabbitMQConsumerWorker<T> : IQueueConsumerWorker
- public RabbitMQConsumerWorker(ILogger logger, IQueueClient queueClient, IModel modelConsumer, IModel modelPublisher, string queueName, IMessageProcessingWorker<T> messageProcessingWorker, IMessageRejectionHandler messageRejectionHandler, ISerializer serializer, ushort prefetchCount = 1)
- public void Dispose()
- public virtual void Dispose(bool disposing)
- public RabbitMQConsumerWorker(IRabbitMQConnection connection, string queueName, IMessageProcessingWorker<T> messageProcessingWorker, IMessageRejectionHandler messageRejectionHandler, ISerializer serializer, Func<bool> scaleCallbackFunc, ushort prefetchCount = 1)
-
public class RabbitMQModel : IRabbitMQModel, IModel, IDisposable
- public int ChannelNumber { get; }
- public ShutdownEventArgs CloseReason { get; }
- public TimeSpan ContinuationTimeout { get; set; }
- public IBasicConsumer DefaultConsumer { get; set; }
- public bool IsClosed { get; }
- public bool IsOpen { get; }
- public ulong NextPublishSeqNo { get; }
- public event EventHandler<BasicAckEventArgs> BasicAcks
- public event EventHandler<BasicNackEventArgs> BasicNacks
- public event EventHandler<EventArgs> BasicRecoverOk
- public event EventHandler<BasicReturnEventArgs> BasicReturn
- public event EventHandler<CallbackExceptionEventArgs> CallbackException
- public event EventHandler<FlowControlEventArgs> FlowControl
- public event EventHandler<ShutdownEventArgs> ModelShutdown
- public RabbitMQModel(IModel model, Action<RabbitMQModel> requeueModelAction, Action discardModelAction)
- public void Abort()
- public void Abort(ushort replyCode, string replyText)
- public void BasicAck(ulong deliveryTag, bool multiple)
- public void BasicCancel(string consumerTag)
- public string BasicConsume(string queue, bool autoAck, string consumerTag, bool noLocal, bool exclusive, IDictionary<string, object> arguments, IBasicConsumer consumer)
- public BasicGetResult BasicGet(string queue, bool autoAck)
- public void BasicNack(ulong deliveryTag, bool multiple, bool requeue)
- public void BasicPublish(string exchange, string routingKey, bool mandatory, IBasicProperties basicProperties, byte[] body)
- public void BasicQos(uint prefetchSize, ushort prefetchCount, bool global)
- public void BasicRecover(bool requeue)
- public void BasicRecoverAsync(bool requeue)
- public void BasicReject(ulong deliveryTag, bool requeue)
- public void Close()
- public void Close(ushort replyCode, string replyText)
- public void ConfirmSelect()
- public uint ConsumerCount(string queue)
- public IBasicProperties CreateBasicProperties()
- public void Dispose()
- public void End()
- public void ExchangeBind(string destination, string source, string routingKey, IDictionary<string, object> arguments)
- public void ExchangeBindNoWait(string destination, string source, string routingKey, IDictionary<string, object> arguments)
- public void ExchangeDeclare(string exchange, string type, bool durable, bool autoDelete, IDictionary<string, object> arguments)
- public void ExchangeDeclareNoWait(string exchange, string type, bool durable, bool autoDelete, IDictionary<string, object> arguments)
- public void ExchangeDeclarePassive(string exchange)
- public void ExchangeDelete(string exchange, bool ifUnused)
- public void ExchangeDeleteNoWait(string exchange, bool ifUnused)
- public void ExchangeUnbind(string destination, string source, string routingKey, IDictionary<string, object> arguments)
- public void ExchangeUnbindNoWait(string destination, string source, string routingKey, IDictionary<string, object> arguments)
- public uint MessageCount(string queue)
- public void QueueBind(string queue, string exchange, string routingKey, IDictionary<string, object> arguments)
- public void QueueBindNoWait(string queue, string exchange, string routingKey, IDictionary<string, object> arguments)
- public QueueDeclareOk QueueDeclare(string queue, bool durable, bool exclusive, bool autoDelete, IDictionary<string, object> arguments)
- public void QueueDeclareNoWait(string queue, bool durable, bool exclusive, bool autoDelete, IDictionary<string, object> arguments)
- public QueueDeclareOk QueueDeclarePassive(string queue)
- public uint QueueDelete(string queue, bool ifUnused, bool ifEmpty)
- public void QueueDeleteNoWait(string queue, bool ifUnused, bool ifEmpty)
- public uint QueuePurge(string queue)
- public void QueueUnbind(string queue, string exchange, string routingKey, IDictionary<string, object> arguments)
- public void TxCommit()
- public void TxRollback()
- public void TxSelect()
- public bool WaitForConfirms()
- public bool WaitForConfirms(TimeSpan timeout)
- public bool WaitForConfirms(TimeSpan timeout, out bool timedOut)
- public void WaitForConfirmsOrDie()
- public void WaitForConfirmsOrDie(TimeSpan timeout)
-
public class RabbitMQModelPool : IDisposable
RabbitMQ.Abstraction.Messaging.Interfaces
RabbitMQ.Abstraction.ProcessingWorkers
-
public abstract class AbstractAdvancedProcessingWorker<T> : AbstractSimpleProcessingWorker<T>
-
public abstract class AbstractSimpleProcessingWorker<T> : IMessageProcessingWorker<T>, IBatchProcessingWorker<T>, IDisposable
-
public class AdvancedAsyncProcessingWorker<T> : AbstractAdvancedProcessingWorker<T>
- public AdvancedAsyncProcessingWorker(IQueueConsumer consumer, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public AdvancedAsyncProcessingWorker(IQueueConsumer consumer, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public AdvancedAsyncProcessingWorker(IQueueClient queueClient, string queueName, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public AdvancedAsyncProcessingWorker(IQueueClient queueClient, string queueName, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<AdvancedAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public static Task<AdvancedAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public static Task<AdvancedAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<AdvancedAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public Task StartAsync(CancellationToken cancellationToken)
- public Task<Task> StartAsync(CancellationToken cancellationToken)
-
public class AdvancedProcessingWorker<T> : AbstractAdvancedProcessingWorker<T>
- public AdvancedProcessingWorker(IQueueConsumer consumer, Action<T, RabbitMQConsumerContext> callbackAction, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public AdvancedProcessingWorker(IQueueConsumer consumer, Action<T> callbackAction, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public AdvancedProcessingWorker(IQueueClient queueClient, string queueName, Action<T, RabbitMQConsumerContext> callbackAction, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public AdvancedProcessingWorker(IQueueClient queueClient, string queueName, Action<T> callbackAction, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<AdvancedProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Action<T, RabbitMQConsumerContext> callbackAction, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public static Task<AdvancedProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Action<T> callbackAction, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, ILogger logger = null)
- public static Task<AdvancedProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Action<T, RabbitMQConsumerContext> callbackAction, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<AdvancedProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Action<T> callbackAction, CancellationToken cancellationToken, ExceptionHandlingStrategy exceptionHandlingStrategy = 1, int invokeRetryCount = 1, int invokeRetryWaitMilliseconds = 0, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public Task StartAsync(CancellationToken cancellationToken)
- public Task<Task> StartAsync(CancellationToken cancellationToken)
-
public class SimpleAsyncProcessingWorker<T> : AbstractSimpleProcessingWorker<T>
- public SimpleAsyncProcessingWorker(IQueueConsumer consumer, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ILogger logger = null)
- public SimpleAsyncProcessingWorker(IQueueConsumer consumer, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, ILogger logger = null)
- public SimpleAsyncProcessingWorker(IQueueClient queueClient, string queueName, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public SimpleAsyncProcessingWorker(IQueueClient queueClient, string queueName, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<SimpleAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ILogger logger = null)
- public static Task<SimpleAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, ILogger logger = null)
- public static Task<SimpleAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Func<T, RabbitMQConsumerContext, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<SimpleAsyncProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Func<T, CancellationToken, Task> callbackFunc, TimeSpan processingTimeout, CancellationToken cancellationToken, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public Task StartAsync(CancellationToken cancellationToken)
- public Task<Task> StartAsync(CancellationToken cancellationToken)
-
public class SimpleProcessingWorker<T> : AbstractSimpleProcessingWorker<T>
- public SimpleProcessingWorker(IQueueConsumer consumer, Action<T, RabbitMQConsumerContext> callbackAction, ILogger logger = null)
- public SimpleProcessingWorker(IQueueConsumer consumer, Action<T> callbackAction, ILogger logger = null)
- public SimpleProcessingWorker(IQueueClient queueClient, string queueName, Action<T, RabbitMQConsumerContext> callbackAction, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public SimpleProcessingWorker(IQueueClient queueClient, string queueName, Action<T> callbackAction, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<SimpleProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Action<T, RabbitMQConsumerContext> callbackAction, CancellationToken cancellationToken, ILogger logger = null)
- public static Task<SimpleProcessingWorker<T>> CreateAndStartAsync(IQueueConsumer consumer, Action<T> callbackAction, CancellationToken cancellationToken, ILogger logger = null)
- public static Task<SimpleProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Action<T, RabbitMQConsumerContext> callbackAction, CancellationToken cancellationToken, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public static Task<SimpleProcessingWorker<T>> CreateAndStartAsync(IQueueClient queueClient, string queueName, Action<T> callbackAction, CancellationToken cancellationToken, IConsumerCountManager consumerCountManager = null, IMessageRejectionHandler messageRejectionHandler = null, ILogger logger = null, ushort prefetchCount = 1)
- public Task StartAsync(CancellationToken cancellationToken)
- public Task<Task> StartAsync(CancellationToken cancellationToken)