// Pre-requisites
using PipServices3.Commons.Config;
using PipServices3.Nats.Queues;
using PipServices3.Messaging.Queues;
namespace ExampleApp
{
class Program
{
/// <summary>
/// Running the container
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
// Create and configure a component
var queue = new NatsMessageQueue();
queue.Configure(ConfigParams.FromTuples(
"topic", "mytopic",
"connection.protocol", "nats",
"connection.host", "localhost",
"connection.port", 4222,
"options.autosubscribe", true
));
// Connect
queue.OpenAsync(null).Wait();
// Send a message
queue.SendAsync("123", new MessageEnvelope("123", "mymessage", "ABC")).Wait();
// Receive a message
var message = queue.ReceiveAsync("123", 10000).Result;
Console.WriteLine("my message is: " + message.GetMessageAsString());
// Close the connection
queue.CloseAsync("123").Wait();
Console.WriteLine("Program executed");
}
}
}