C Sharp Examples

From Open Rail Data Wiki
Revision as of 16:36, 8 December 2014 by PeterHicks (talk | contribs) (→‎Apache NMS: Remove stray bracket)
Jump to navigation Jump to search

Apache NMS

This code will connect to the TRAIN_MVT_ALL_TOC topic and display all messages. For more details on this client, see Gavin's blog.

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);
      }
 
    }
  
  }

}


Network Rail Open Data Feeds
Data Feeds About the Feeds Account States Durable Subscriptions Example Code ( PHP / C# / Java / Ruby / Node.js) • Advanced UsesFAQ Release Notes
RTPPM RTPPM Feed
Train Movements Train Movements Feed Train Activation Train Cancellation Train Movement Train Reinstatement Change of Origin Change of Identity Change of Location TSPEED Field Planned Cancellations Cancellation Codes
TD TD Feed C-Class Messages S-Class Messages Train Describers TD Berths
VSTP VSTP Feed
TSR TSR Feed Route Codes
SCHEDULE SCHEDULE Feed Schedule and Location Records Association Records CIF Codes How Scheduling Works Allowances
Reference Data Reference Data Feed TOC Codes CIF Codes Delay Attribution Codes Identifying Locations (STANOX, TIPLOC, NLC and 3-Alpha Codes) STANOX Geographical Areas Train Planning data