C-Sharp: Difference between revisions

From Open Rail Data Wiki
m categorisation
m Redirected to new C# examples page
 
Line 1: Line 1:
==Apache NMS==
#REDIRECT [[C_Sharp_Examples]]
 
This code will connect to the TRAIN_MVT_ALL_TOC topic and display all messages.  For more details on this client, see [http://gavincoates.com/c-activemq-stomp Gavin's blog].
 
<pre>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using Apache.NMS;
 
namespace ApacheNMS
{
    class Program
    {
        static void Main(string[] args)
        {
            IConnectionFactory factory = new NMSConnectionFactory(new Uri("stomp:tcp://datafeeds.networkrail.co.uk:61618"));
 
            IConnection connection = factory.CreateConnection("username", "password");
            ISession session = connection.CreateSession();
 
            IDestination destination = session.GetDestination("topic://" + "TRAIN_MVT_ALL_TOC");
            IMessageConsumer consumer = session.CreateConsumer(destination);
 
 
            connection.Start();
            consumer.Listener += new MessageListener(OnMessage);
            Console.WriteLine("Consumer started, waiting for messages... (Press ENTER to stop.)");
 
            Console.ReadLine();
            connection.Close();
        }
 
        private static void OnMessage(IMessage message)
        {
            try
            {
                Console.WriteLine("Median-Server (.NET): Message received");
 
                ITextMessage msg = (ITextMessage)message;
                message.Acknowledge();
 
                Console.WriteLine(msg.Text);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine("---");
                Console.WriteLine(ex.InnerException);
                Console.WriteLine("---");
                Console.WriteLine(ex.InnerException.Message);
            }
        }
    }
}
</pre>
 
[[Category:Network Rail Data Feeds]]

Latest revision as of 17:54, 9 July 2013

Redirect to: