Muflone.Transport.RabbitMQ
6.1.6
See the version list below for details.
dotnet add package Muflone.Transport.RabbitMQ --version 6.1.6
NuGet\Install-Package Muflone.Transport.RabbitMQ -Version 6.1.6
<PackageReference Include="Muflone.Transport.RabbitMQ" Version="6.1.6" />
paket add Muflone.Transport.RabbitMQ --version 6.1.6
#r "nuget: Muflone.Transport.RabbitMQ, 6.1.6"
// Install Muflone.Transport.RabbitMQ as a Cake Addin
#addin nuget:?package=Muflone.Transport.RabbitMQ&version=6.1.6
// Install Muflone.Transport.RabbitMQ as a Cake Tool
#tool nuget:?package=Muflone.Transport.RabbitMQ&version=6.1.6
Muflone Transport RabbitMQ
Muflone extension to manage queues, and topics on RabbitMQ.
Install
Install-Package Muflone.Transport.RabbitMQ
2023-04-23 Breaking changes
Renamed class
DomainEventsConsumerBase
toDomainEventConsumerBase
Added
IRepository
in the ConsumerBase's constructorNow ConsumerBase's
LoggerFactory
is public and not private anymore. We can now use it in something like that:public class CreateCartConsumer : CommandConsumerBase<CreateCart> { public CreateCartConsumer(IRepository repository, RabbitMQReference rabbitMQReference, IMufloneConnectionFactory mufloneConnectionFactory, ILoggerFactory loggerFactory) : base(repository, rabbitMQReference, mufloneConnectionFactory, loggerFactory) { } protected override ICommandHandlerAsync<CreateCart> HandlerAsync => new CreateCartCommandHandler(Repository, LoggerFactory); }
Changed, property of
DomainEventConsumerBase
fromIEnumerable<IDomainEventHandlerAsync<T>> HandlersAsync
toIDomainEventHandlerAsync<T> HandlerAsync
Sample
It's very simple to register RabbitMQ's transport
public IServiceCollection RegisterModule(WebApplicationBuilder builder)
{
var rabbitMQConfiguration = new RabbitMQConfiguration("localhost", "myuser", "mypassword", "Muflone");
var rabbitMQReference =
new RabbitMQReference("MufloneCommands", "CreateOrder", "MufloneEvents", "OrderCreated");
var mufloneConnectionFactory = new MufloneConnectionFactory(rabbitMQConfiguration, new NullLoggerFactory());
builder.Services.AddScoped<ICommandHandlerAsync<CreateOrder>, CreateOrderCommandHandler>();
builder.Services.AddScoped<IDomainEventHandlerAsync<OrderCreated>, OrderCreatedEventHandler>();
var conumsers = new List<IConsumer>
{
new CreateOrderConsumer(rabbitMQReference, mufloneConnectionFactory, new NullLoggerFactory()),
new OrderCreatedConsumer(rabbitMQReference, mufloneConnectionFactory, new NullLoggerFactory())
};
builder.Services.AddMufloneTransportRabbitMQ(rabbitMQConfiguration, rabbitMQReference, conumsers);
return builder.Services;
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- Microsoft.Extensions.DependencyInjection (>= 7.0.0)
- Microsoft.Extensions.Hosting (>= 7.0.1)
- Microsoft.Extensions.Logging (>= 7.0.0)
- Muflone (>= 6.2.0)
- Polly (>= 7.2.3)
- RabbitMQ.Client (>= 6.5.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Muflone.Transport.RabbitMQ:
Package | Downloads |
---|---|
Muflone.Transport.RabbitMQ.Saga
Muflone saga implementation for RabbitMQ |
GitHub repositories
This package is not used by any popular GitHub repositories.