CodeDesignPlus.Net.RabbitMQ.Abstractions 0.7.0-beta.29

This is a prerelease version of CodeDesignPlus.Net.RabbitMQ.Abstractions.
There is a newer version of this package available.
See the version list below for details.
dotnet add package CodeDesignPlus.Net.RabbitMQ.Abstractions --version 0.7.0-beta.29
                    
NuGet\Install-Package CodeDesignPlus.Net.RabbitMQ.Abstractions -Version 0.7.0-beta.29
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CodeDesignPlus.Net.RabbitMQ.Abstractions" Version="0.7.0-beta.29" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CodeDesignPlus.Net.RabbitMQ.Abstractions" Version="0.7.0-beta.29" />
                    
Directory.Packages.props
<PackageReference Include="CodeDesignPlus.Net.RabbitMQ.Abstractions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CodeDesignPlus.Net.RabbitMQ.Abstractions --version 0.7.0-beta.29
                    
#r "nuget: CodeDesignPlus.Net.RabbitMQ.Abstractions, 0.7.0-beta.29"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CodeDesignPlus.Net.RabbitMQ.Abstractions@0.7.0-beta.29
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CodeDesignPlus.Net.RabbitMQ.Abstractions&version=0.7.0-beta.29&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=CodeDesignPlus.Net.RabbitMQ.Abstractions&version=0.7.0-beta.29&prerelease
                    
Install as a Cake Tool

CodeDesignPlus.Net.RabbitMQ

Quality Gate Status Bugs Code Smells Coverage Duplicated Lines (%) Vulnerabilities

Description

The CodeDesignPlus.Net.RabbitMQ library is part of the CodeDesignPlus.Net SDK, designed to provide a robust and flexible implementation for integrating RabbitMQ messaging into .NET applications. This library abstracts the complexities of RabbitMQ, offering a simplified interface for configuring and managing RabbitMQ connections, channels, and queues, which are essential for developing scalable and reliable message-driven applications.

Table of Contents

About The Project

The CodeDesignPlus.Net.RabbitMQ library is part of the CodeDesignPlus.Net SDK, designed to provide a robust and flexible implementation for integrating RabbitMQ messaging into .NET applications. This library abstracts the complexities of RabbitMQ, offering a simplified interface for configuring and managing RabbitMQ connections, channels, and queues, which are essential for developing scalable and reliable message-driven applications.

Key Features

  • Flexible Configuration:

    • The library provides detailed configuration options for RabbitMQ, including settings for host, port, username, password, retry intervals, and more. This allows developers to fine-tune their RabbitMQ setup to meet specific application requirements.

    • Configuration options are encapsulated in the RabbitMQOptions class, which supports validation and default values.

  • Queue Management:

    • It includes comprehensive support for managing RabbitMQ queues, including defining message TTL, queue expiration, maximum length, and priority settings.

    • Configurations are managed through the QueueArguments class, which validates and compiles these settings into a dictionary of arguments for RabbitMQ.

  • Connection Handling:

    • The library handles RabbitMQ connections efficiently, with retry mechanisms to ensure robust connectivity.
    • The RabbitConnection class manages the lifecycle of RabbitMQ connections, including creating and disposing of connections, and handling retries on failure.
  • Channel Provisioning:

    • It supports dynamic provisioning of RabbitMQ channels for publishing and consuming messages, ensuring that each domain event type has its dedicated channel.

    • The ChannelProvider class manages the creation and retrieval of channels based on event types, ensuring efficient message routing.

  • Event Handling:

    • The library simplifies the process of declaring exchanges and managing consumer tags for domain events, facilitating smooth event-driven architecture implementations.

    • Methods in ChannelProvider allow for declaring exchanges and retrieving channels for both publishing and consuming events.

  • Dead-Letter Exchange (DLX) Support:

    • Includes configuration for dead-letter exchanges and queues, helping to manage message failures and retries.

    • The RabbitPubSubService class provides methods for configuring standard and DLX queues, ensuring proper handling of undeliverable messages.

These features make the CodeDesignPlus.Net.RabbitMQ library a powerful tool for integrating RabbitMQ in .NET applications, providing flexibility, reliability, and ease of use.

Installation

To install the package, run the following command:

dotnet add package CodeDesignPlus.Net.RabbitMQ

Usage

For more information regarding the library, you can visit our documentation at CodeDesignPlus Doc

Roadmap

Refer to issues for a list of proposed features and known issues.

Roadmap

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b features/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

CodeDesignPlus - @CodeDesignPlus - codedesignplus@outlook.com

Project Link: CodeDesignPlus.Net.RabbitMQ

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on CodeDesignPlus.Net.RabbitMQ.Abstractions:

Package Downloads
CodeDesignPlus.Net.RabbitMQ

CodeDesignPlus.Net.RabbitMQ provides a robust framework for integrating RabbitMQ with .NET Core applications. This library simplifies the process of producing and consuming RabbitMQ messages, enabling developers to build scalable and reliable event-driven systems.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.9.0 282 8 days ago
0.9.0-rc.636 102 8 days ago
0.9.0-beta.465 104 8 days ago
0.8.0 151 9 days ago
0.8.0-rc.306 106 9 days ago
0.8.0-rc.305 108 9 days ago
0.8.0-beta.149 106 9 days ago
0.7.0 134 9 days ago
0.7.0-rc.147 108 9 days ago
0.7.0-rc.142 109 10 days ago
0.7.0-rc.141 101 10 days ago
0.7.0-rc.128 107 10 days ago
0.7.0-beta.142 108 10 days ago
0.7.0-beta.141 107 10 days ago
0.7.0-beta.140 106 10 days ago
0.7.0-beta.139 106 10 days ago
0.7.0-beta.128 107 10 days ago
0.7.0-beta.89 108 13 days ago
0.7.0-beta.88 34 14 days ago
0.7.0-beta.87 35 14 days ago
0.7.0-beta.83 51 14 days ago
0.7.0-beta.82 51 14 days ago
0.7.0-beta.81 55 14 days ago
0.7.0-beta.79 188 17 days ago
0.7.0-beta.78 108 17 days ago
0.7.0-beta.77 81 20 days ago
0.7.0-beta.75 81 20 days ago
0.7.0-beta.74 58 21 days ago
0.7.0-beta.73 43 21 days ago
0.7.0-beta.71 125 a month ago
0.7.0-beta.70 119 a month ago
0.7.0-beta.69 118 a month ago
0.7.0-beta.68 116 a month ago
0.7.0-beta.67 109 a month ago
0.7.0-beta.65 111 a month ago
0.7.0-beta.64 112 a month ago
0.7.0-beta.63 134 a month ago
0.7.0-beta.62 282 a month ago
0.7.0-beta.61 322 a month ago
0.7.0-beta.60 172 a month ago
0.7.0-beta.59 262 a month ago
0.7.0-beta.58 354 a month ago
0.7.0-beta.57 257 a month ago
0.7.0-beta.56 266 a month ago
0.7.0-beta.55 270 a month ago
0.7.0-beta.53 371 a month ago
0.7.0-beta.52 256 a month ago
0.7.0-beta.51 258 a month ago
0.7.0-beta.50 255 a month ago
0.7.0-beta.48 264 a month ago
0.7.0-beta.47 260 a month ago
0.7.0-beta.46 245 a month ago
0.7.0-beta.45 237 a month ago
0.7.0-beta.44 245 a month ago
0.7.0-beta.33 268 2 months ago
0.7.0-beta.32 213 2 months ago
0.7.0-beta.31 117 2 months ago
0.7.0-beta.30 222 2 months ago
0.7.0-beta.29 174 2 months ago
0.7.0-beta.28 376 2 months ago
0.7.0-beta.27 225 2 months ago
0.7.0-beta.26 208 2 months ago
0.7.0-beta.25 185 2 months ago
0.7.0-beta.24 165 2 months ago
0.7.0-beta.23 158 2 months ago
0.7.0-beta.22 47 2 months ago
0.7.0-beta.21 125 2 months ago
0.7.0-beta.20 138 2 months ago
0.7.0-beta.18 120 2 months ago
0.7.0-beta.17 117 2 months ago
0.7.0-beta.16 270 2 months ago
0.7.0-beta.15 232 3 months ago
0.7.0-beta.11 140 3 months ago
0.7.0-beta.10 131 3 months ago
0.7.0-beta.9 146 3 months ago
0.7.0-beta.8 91 3 months ago
0.7.0-beta.7 87 3 months ago
0.7.0-beta.6 147 3 months ago
0.7.0-beta.5 128 3 months ago
0.7.0-beta.4 132 3 months ago
0.7.0-beta.3 128 3 months ago
0.7.0-beta.2 133 3 months ago
0.6.1-beta.1 247 3 months ago
0.6.0 172 3 months ago
0.6.0-rc.29 65 3 months ago
0.6.0-beta.29 221 3 months ago
0.6.0-beta.28 107 3 months ago
0.6.0-beta.26 218 4 months ago
0.6.0-beta.22 148 5 months ago
0.6.0-beta.21 204 5 months ago
0.6.0-beta.20 143 5 months ago
0.6.0-beta.18 83 5 months ago
0.6.0-beta.15 89 5 months ago
0.6.0-beta.10 143 5 months ago
0.6.0-beta.9 63 5 months ago
0.5.1 119 4 months ago
0.5.0 118 6 months ago
0.5.0-rc.87 71 6 months ago
0.5.0-beta.91 59 6 months ago
0.5.0-beta.89 70 6 months ago
0.5.0-beta.87 72 6 months ago
0.5.0-beta.86 68 6 months ago
0.5.0-beta.85 64 6 months ago
0.5.0-beta.84 61 6 months ago
0.5.0-beta.83 61 6 months ago
0.5.0-beta.82 68 6 months ago
0.5.0-beta.81 72 6 months ago
0.5.0-beta.79 61 6 months ago
0.5.0-beta.78 64 6 months ago
0.5.0-beta.76 62 6 months ago
0.5.0-beta.75 63 6 months ago
0.5.0-beta.71 64 6 months ago
0.5.0-beta.69 56 6 months ago
0.5.0-beta.61 56 6 months ago
0.5.0-beta.60 65 6 months ago
0.5.0-beta.59 67 6 months ago
0.5.0-beta.57 59 6 months ago
0.5.0-beta.56 67 6 months ago
0.5.0-beta.54 70 6 months ago
0.5.0-beta.39 89 7 months ago
0.5.0-beta.38 91 7 months ago
0.5.0-beta.30 80 7 months ago
0.5.0-beta.14 74 8 months ago
0.5.0-beta.13 63 8 months ago
0.5.0-beta.11 68 8 months ago
0.5.0-beta.9 66 9 months ago
0.5.0-beta.6 69 9 months ago
0.5.0-beta.4 75 9 months ago
0.4.1-beta.3 70 9 months ago
0.3.0-rc.3 67 9 months ago
0.3.0-beta.3 64 9 months ago
0.3.0-alpha.3 65 9 months ago
0.2.0-rc.27 64 9 months ago
0.2.0-rc.18 73 10 months ago
0.2.0-beta.27 65 9 months ago
0.2.0-beta.18 87 10 months ago
0.2.0-alpha.27 66 9 months ago
0.2.0-alpha.26 66 9 months ago
0.2.0-alpha.25 66 9 months ago
0.2.0-alpha.24 67 9 months ago
0.2.0-alpha.23 68 9 months ago
0.2.0-alpha.22 60 9 months ago
0.2.0-alpha.21 59 9 months ago
0.2.0-alpha.20 64 9 months ago
0.2.0-alpha.19 72 9 months ago
0.2.0-alpha.18 73 10 months ago
0.2.0-alpha.17 65 10 months ago
0.2.0-alpha.16 65 10 months ago
0.2.0-alpha.15 71 10 months ago
0.2.0-alpha.14 69 10 months ago
0.2.0-alpha.13 73 10 months ago
0.2.0-alpha.12 69 10 months ago
0.2.0-alpha.11 65 10 months ago
0.2.0-alpha.10 74 10 months ago
0.2.0-alpha.9 68 10 months ago
0.2.0-alpha.7 71 10 months ago
0.2.0-alpha.6 74 10 months ago
0.2.0-alpha.5 62 10 months ago
0.2.0-alpha.4 70 10 months ago
0.2.0-alpha.3 77 9/1/2024
0.2.0-alpha.2 64 10 months ago
0.1.2-alpha.1 82 8/24/2024
0.1.2-alpha.0 82 8/24/2024
0.1.1 169 8/23/2024
0.1.1-alpha.19 84 8/23/2024