Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Before running the examples, you need to unzip the file Qpid.NET-net-2.0-M4.zip, the following tree is created:

Code Block

<home>
  |-qpid

...


     |-lib (contains the required dlls)

...

-examples

...

  • direct

...

 


     |-examples
          |- direct
          |    |-example-direct-Listener.exe

...

 


          |    |-example-direct-Producer.exe

...

  • fanout

...

 


          |- fanout
          |    |-example-fanout-Listener.exe

...

 


          |    |-example-fanout-Producer.exe

...

  • pub-sub

...

 


          |- pub-sub
          |    |-example-pub-sub-Listener.exe

...

 


          |    |-example-pub-sub-Publisher.exe

...


          |- request-response

...


               |-example-request-response-Client.exe

...


               |-example-request-response-Server.exe

Make sure your PATH contains the directory <home>/qpid/lib

Creating and Closing Sessions

All of the examples have been written using the Apache Qpid .NEt 0.10 API. The examples use the same skeleton code to initialize the program, create a session, and clean up before exiting:

Code Block

using System;
using System.IO;
using System.Text;
using System.Threading;
using org.apache.qpid.client;
using org.apache.qpid.transport;

...

        private static void Main(string[] args)
        {
            string host = args.Length > 0 ? args[0] : "localhost";
            int port = args.Length > 1 ? Convert.ToInt32(args[1]) : 5672;
            Client connection = new Client();
            try
            {
                connection.connect(host, port, "test", "guest", "guest");
                ClientSession session = connection.createSession(50000);

                //--------- Main body of program --------------------------------------------

                connection.close();
            }
            catch (Exception e)
            {
                Console.WriteLine("Error: \n" + e.StackTrace);
            }
        }
...

Writing Direct Applications

This section describes three programs that implement direct messaging using a Direct
exchange:
• org.apache.qpid.example.direct.Producer (from example-direct-producer) publishes messages to the amq.direct exchange, using the routing key routing_key.
•org.apache.qpid.example.direct.Listener (from example-direct-Listener) uses a message listener to receive messages from the queue named message_queue.