Getting started
ArtemisNetCoreClient is an open-source effort to equip .NET developers with a powerful, straightforward client for Apache ActiveMQ Artemis. Utilizing the broker's CORE protocol, this library focuses on high-performance messaging, ensuring compatibility and comprehensive feature support with Apache ActiveMQ Artemis.
Installation
The library is distributed via NuGet. You can add ArtemisNetCoreClient NuGet package using dotnet CLI:
dotnet add package ArtemisNetCoreClient --prerelease
API overview
The API interfaces and classes are defined in the ActiveMQ.Artemis.Core.Client
namespace:
using ActiveMQ.Artemis.Core.Client;
The main API interfaces and classes are:
IConnection
: represents a connection with the brokerConnectionFactory
: constructsIConnection
instancesISession
: represents a context for producing and consuming messagesIConsumer
: represents a message consumerIProducer
: represents a message producer attached to a specified addressIAnonymousProducer
: represents a message producer capable of sending messages to multiple addresses
Creating a Connection
To send or receive messages, you first need to establish a connection with the broker endpoint. This connection process starts by setting up an Endpoint
class instance, which specifies the connection parameters.
Initializing the Endpoint
You can initialize an Endpoint
object using the following object initializer in C#:
var endpoint = new Endpoint
{
Host = "localhost",
Port = 61616,
User = "guest",
Password = "guest"
};
Host
andPort
properties specify the TCP endpoint for the connection.User
andPassword
are credentials used to authenticate the client application with the broker.
Establishing a Connection
To connect to an ActiveMQ Artemis node, create a ConnectionFactory
object. This factory provides a method to asynchronously create connections using the previously defined Endpoint
object.
Here is how you can connect to an ActiveMQ Artemis node using the Endpoint
configuration:
var connectionFactory = new ConnectionFactory();
var connection = await connectionFactory.CreateAsync(endpoint);
This example demonstrates how to connect to an ActiveMQ Artemis node using localhost
on port 61616
with the username and password both set to guest
.