summaryrefslogtreecommitdiff
path: root/cpp/bindings
diff options
context:
space:
mode:
authorCharles E. Rolke <chug@apache.org>2010-12-01 19:54:13 +0000
committerCharles E. Rolke <chug@apache.org>2010-12-01 19:54:13 +0000
commita3ec0c3d16162606321c7f89e4ef78bccd0a12a0 (patch)
tree32954a6a92d7a1d9a984020bbd55100d283619aa /cpp/bindings
parente5ddc402681322fc0031b3d2bc39b1d75e8a1080 (diff)
downloadqpid-python-a3ec0c3d16162606321c7f89e4ef78bccd0a12a0.tar.gz
Bring QPID .NET Binding examples more in line with cpp examples.
1. Return 0/1 from main to indicate success/failure, where possible. 2. Call sender's session.Sync() after transmitting messages and not waiting for responses. 3. Add third arg connectionOptions as used in cpp examples. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1041141 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/bindings')
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.direct.receiver/csharp.direct.receiver.cs4
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.direct.sender/csharp.direct.sender.cs5
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.example.client/csharp.example.client.cs9
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.example.declare_queues/csharp.example.declare_queues.cs4
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.example.drain/csharp.example.drain.cs4
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.example.server/csharp.example.server.cs11
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.example.spout/csharp.example.spout.cs6
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.map.callback.receiver/csharp.map.callback.receiver.cs15
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.map.callback.sender/csharp.map.callback.sender.cs31
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.map.receiver/csharp.map.recevier.cs7
-rw-r--r--cpp/bindings/qpid/dotnet/examples/csharp.map.sender/csharp.map.sender.cs14
-rw-r--r--cpp/bindings/qpid/dotnet/examples/visualbasic.example.client/visualbasic.example.client.vb11
12 files changed, 88 insertions, 33 deletions
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.direct.receiver/csharp.direct.receiver.cs b/cpp/bindings/qpid/dotnet/examples/csharp.direct.receiver/csharp.direct.receiver.cs
index cb4cb3e37d..592a05ab29 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.direct.receiver/csharp.direct.receiver.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.direct.receiver/csharp.direct.receiver.cs
@@ -31,7 +31,7 @@ namespace CSharpDirect
// Receive 10 messages from localhost:5672, amq.direct/key
// Messages are assumed to be printable strings.
//
- static void Main(string[] args)
+ static int Main(string[] args)
{
String host = "localhost:5672";
String addr = "amq.direct/key";
@@ -66,12 +66,14 @@ namespace CSharpDirect
Console.WriteLine("Rcvd msg {0} : {1}", i, msg2.GetContent());
}
connection.Close();
+ return 0;
}
} catch (Exception e) {
Console.WriteLine("Exception {0}.", e);
if (null != connection)
connection.Close();
}
+ return 1;
}
}
} \ No newline at end of file
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.direct.sender/csharp.direct.sender.cs b/cpp/bindings/qpid/dotnet/examples/csharp.direct.sender/csharp.direct.sender.cs
index ade2befd25..a0ac742a45 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.direct.sender/csharp.direct.sender.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.direct.sender/csharp.direct.sender.cs
@@ -31,7 +31,7 @@ namespace csharp.direct.sender
// Send 10 messages from localhost:5672, amq.direct/key
// Messages are assumed to be printable strings.
//
- static void Main(string[] args)
+ static int Main(string[] args)
{
String host = "localhost:5672";
String addr = "amq.direct/key";
@@ -65,13 +65,16 @@ namespace csharp.direct.sender
Message message = new Message(String.Format("Test Message {0}", i));
sender.Send(message);
}
+ session.Sync();
connection.Close();
+ return 0;
}
} catch (Exception e) {
Console.WriteLine("Exception {0}.", e);
if (null != connection)
connection.Close();
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.example.client/csharp.example.client.cs b/cpp/bindings/qpid/dotnet/examples/csharp.example.client/csharp.example.client.cs
index 79b798e540..19a5267297 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.example.client/csharp.example.client.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.example.client/csharp.example.client.cs
@@ -24,13 +24,16 @@ using Org.Apache.Qpid.Messaging;
namespace Org.Apache.Qpid.Messaging.Examples {
class Client {
- static void Main(string[] args) {
+ static int Main(string[] args) {
String url = "amqp:tcp:127.0.0.1:5672";
+ String connectionOptions = "";
if (args.Length > 0)
url = args[0];
+ if (args.Length > 1)
+ connectionOptions = args[1];
- Connection connection = new Connection(url);
+ Connection connection = new Connection(url, connectionOptions);
try
{
connection.Open();
@@ -59,12 +62,14 @@ namespace Org.Apache.Qpid.Messaging.Examples {
Console.WriteLine("{0} -> {1}", request.GetContent(), response.GetContent());
}
connection.Close();
+ return 0;
}
catch (Exception e)
{
Console.WriteLine("Exception {0}.", e);
connection.Close();
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.example.declare_queues/csharp.example.declare_queues.cs b/cpp/bindings/qpid/dotnet/examples/csharp.example.declare_queues/csharp.example.declare_queues.cs
index 4a20e32182..06267bf719 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.example.declare_queues/csharp.example.declare_queues.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.example.declare_queues/csharp.example.declare_queues.cs
@@ -27,7 +27,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
//
// Sample invocation: csharp.example.declare_queues.exe localhost:5672 my-queue
//
- static void Main(string[] args) {
+ static int Main(string[] args) {
string addr = "localhost:5672";
string queue = "my-queue";
@@ -46,6 +46,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
Sender sender = session.CreateSender(queueName);
session.Close();
connection.Close();
+ return 0;
}
catch (Exception e)
{
@@ -53,6 +54,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
if (null != connection)
connection.Close();
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.example.drain/csharp.example.drain.cs b/cpp/bindings/qpid/dotnet/examples/csharp.example.drain/csharp.example.drain.cs
index dc38590f0a..04a0764f7c 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.example.drain/csharp.example.drain.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.example.drain/csharp.example.drain.cs
@@ -30,7 +30,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
//
// Sample invocation: csharp.example.drain.exe --broker localhost:5672 --timeout 30 my-queue
//
- static void Main(string[] args) {
+ static int Main(string[] args) {
Options options = new Options(args);
Connection connection = null;
@@ -74,6 +74,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
receiver.Close();
session.Close();
connection.Close();
+ return 0;
}
catch (Exception e)
{
@@ -81,6 +82,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
if (null != connection)
connection.Close();
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.example.server/csharp.example.server.cs b/cpp/bindings/qpid/dotnet/examples/csharp.example.server/csharp.example.server.cs
index 4ec56491ac..1d93649195 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.example.server/csharp.example.server.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.example.server/csharp.example.server.cs
@@ -24,14 +24,18 @@ using Org.Apache.Qpid.Messaging;
namespace Org.Apache.Qpid.Messaging.Examples {
class Server {
- static void Main(string[] args) {
- String url = "amqp:tcp:127.0.0.1:5672";
+ static int Main(string[] args) {
+ string url = "amqp:tcp:127.0.0.1:5672";
+ string connectionOptions = "";
if (args.Length > 0)
url = args[0];
+ // address args[1] is not used in this example
+ if (args.Length > 2)
+ connectionOptions = args[2];
try {
- Connection connection = new Connection(url);
+ Connection connection = new Connection(url, connectionOptions);
connection.Open();
Session session = connection.CreateSession();
Receiver receiver = session.CreateReceiver("service_queue; {create: always}");
@@ -56,6 +60,7 @@ namespace Org.Apache.Qpid.Messaging.Examples {
} catch (Exception e) {
Console.WriteLine("Exception {0}.", e);
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.example.spout/csharp.example.spout.cs b/cpp/bindings/qpid/dotnet/examples/csharp.example.spout/csharp.example.spout.cs
index 830e943705..531abadd4c 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.example.spout/csharp.example.spout.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.example.spout/csharp.example.spout.cs
@@ -63,13 +63,13 @@ namespace Org.Apache.Qpid.Messaging.Examples {
}
}
- static void Main(string[] args) {
+ static int Main(string[] args) {
Options options = new Options(args);
Connection connection = null;
try
{
- connection = new Connection(options.Url);
+ connection = new Connection(options.Url, options.ConnectionOptions);
connection.Open();
Session session = connection.CreateSession();
Sender sender = session.CreateSender(options.Address);
@@ -107,11 +107,13 @@ namespace Org.Apache.Qpid.Messaging.Examples {
}
session.Sync();
connection.Close();
+ return 0;
} catch (Exception e) {
Console.WriteLine("Exception {0}.", e);
if (null != connection)
connection.Close();
}
+ return 1;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.receiver/csharp.map.callback.receiver.cs b/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.receiver/csharp.map.callback.receiver.cs
index 965b494dc7..b1ba949e07 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.receiver/csharp.map.callback.receiver.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.receiver/csharp.map.callback.receiver.cs
@@ -186,18 +186,19 @@ namespace Org.Apache.Qpid.Messaging.Examples
/// receive messages.
/// </summary>
/// <param name="args">Main program arguments</param>
- public void TestProgram(string[] args)
+ public int TestProgram(string[] args)
{
string url = "amqp:tcp:localhost:5672";
string addr = "amq.direct/map_example";
int nSec = 30;
+ string connectionOptions = "";
if (1 == args.Length)
{
if (args[0].Equals("-h") || args[0].Equals("-H") || args[0].Equals("/?"))
{
usage(url, addr, nSec);
- return;
+ return 1;
}
}
@@ -207,11 +208,13 @@ namespace Org.Apache.Qpid.Messaging.Examples
addr = args[1];
if (args.Length > 2)
nSec = System.Convert.ToInt32(args[2]);
+ if (args.Length > 3)
+ connectionOptions = args[3];
//
// Create and open an AMQP connection to the broker URL
//
- Connection connection = new Connection(url);
+ Connection connection = new Connection(url, connectionOptions);
connection.Open();
//
@@ -258,6 +261,7 @@ namespace Org.Apache.Qpid.Messaging.Examples
//
receiver.Close();
connection.Close();
+ return 0;
}
}
@@ -268,13 +272,14 @@ namespace Org.Apache.Qpid.Messaging.Examples
/// Main program
/// </summary>
/// <param name="args">Main prgram args</param>
- static void Main(string[] args)
+ static int Main(string[] args)
{
// Invoke 'TestProgram' as non-static class.
ReceiverProcess mainProc = new ReceiverProcess();
- mainProc.TestProgram(args);
+ int result = mainProc.TestProgram(args);
+ return result;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.sender/csharp.map.callback.sender.cs b/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.sender/csharp.map.callback.sender.cs
index c6b764a567..4cc88564e7 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.sender/csharp.map.callback.sender.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.map.callback.sender/csharp.map.callback.sender.cs
@@ -31,7 +31,7 @@ namespace Org.Apache.Qpid.Messaging.Examples
//
// usage
//
- static void usage(string url, string addr, UInt32 count)
+ static void usage(string url, string addr, UInt32 count, string connOpts)
{
Console.WriteLine("usage: {0} [url [addr [count]]]",
@@ -43,29 +43,31 @@ namespace Org.Apache.Qpid.Messaging.Examples
Console.WriteLine(" url = target address for 'new Connection(url)'");
Console.WriteLine(" addr = address for 'session.CreateReceiver(addr)'");
Console.WriteLine(" count = number of messages to send");
+ Console.WriteLine(" connectionOptions = options list");
Console.WriteLine();
Console.WriteLine("Default values:");
- Console.WriteLine(" {0} {1} {2} {3}",
+ Console.WriteLine(" {0} {1} {2} {3} {4}",
System.Diagnostics.Process.GetCurrentProcess().ProcessName,
- url, addr, count);
+ url, addr, count, connOpts);
}
//
// TestProgram
//
- public void TestProgram(string[] args)
+ public int TestProgram(string[] args)
{
string url = "amqp:tcp:localhost:5672";
string addr = "amq.direct/map_example";
UInt32 count = 1;
+ string connectionOptions = "";
if (1 == args.Length)
{
if (args[0].Equals("-h") || args[0].Equals("-H") || args[0].Equals("/?"))
{
- usage(url, addr, count);
- return;
+ usage(url, addr, count, connectionOptions);
+ return 1;
}
}
@@ -75,12 +77,13 @@ namespace Org.Apache.Qpid.Messaging.Examples
addr = args[1];
if (args.Length > 2)
count = System.Convert.ToUInt32(args[2]);
-
+ if (args.Length > 3)
+ connectionOptions = args[3];
//
// Create and open an AMQP connection to the broker URL
//
- Connection connection = new Connection(url);
+ Connection connection = new Connection(url, connectionOptions);
connection.Open();
//
@@ -160,9 +163,16 @@ namespace Org.Apache.Qpid.Messaging.Examples
sender.Send(message, true);
//
+ // Wait until broker receives all messages.
+ //
+ session.Sync();
+
+ //
// Close the connection.
//
connection.Close();
+
+ return 0;
}
}
@@ -171,13 +181,14 @@ namespace Org.Apache.Qpid.Messaging.Examples
//
// Main
//
- static void Main(string[] args)
+ static int Main(string[] args)
{
// Invoke 'TestProgram' as non-static class.
MapSender mainProc = new MapSender();
- mainProc.TestProgram(args);
+ int result = mainProc.TestProgram(args);
+ return result;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.map.receiver/csharp.map.recevier.cs b/cpp/bindings/qpid/dotnet/examples/csharp.map.receiver/csharp.map.recevier.cs
index a3b13e2dcd..5219ee789a 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.map.receiver/csharp.map.recevier.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.map.receiver/csharp.map.recevier.cs
@@ -32,14 +32,18 @@ namespace Org.Apache.Qpid.Messaging.examples
// Send an amqp/map message to amqp:tcp:localhost:5672 amq.direct/map_example
// The map message
//
- static void Main(string[] args)
+ static int Main(string[] args)
{
string url = "amqp:tcp:localhost:5672";
string address = "message_queue; {create: always}";
+ string connectionOptions = "";
+
if (args.Length > 0)
url = args[0];
if (args.Length > 1)
address = args[1];
+ if (args.Length > 2)
+ connectionOptions = args[3];
//
// Create and open an AMQP connection to the broker URL
@@ -76,6 +80,7 @@ namespace Org.Apache.Qpid.Messaging.examples
//
receiver.Close();
connection.Close();
+ return 0;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/csharp.map.sender/csharp.map.sender.cs b/cpp/bindings/qpid/dotnet/examples/csharp.map.sender/csharp.map.sender.cs
index addac446b5..9001eb8e0b 100644
--- a/cpp/bindings/qpid/dotnet/examples/csharp.map.sender/csharp.map.sender.cs
+++ b/cpp/bindings/qpid/dotnet/examples/csharp.map.sender/csharp.map.sender.cs
@@ -34,19 +34,23 @@ namespace Org.Apache.Qpid.Messaging.examples
// The map message contains simple types, a nested amqp/map,
// an ampq/list, and specific instances of each supported type.
//
- static void Main(string[] args)
+ static int Main(string[] args)
{
string url = "amqp:tcp:localhost:5672";
string address = "message_queue; {create: always}";
+ string connectionOptions = "";
+
if (args.Length > 0)
url = args[0];
if (args.Length > 1)
address = args[1];
+ if (args.Length > 2)
+ connectionOptions = args[2];
//
// Create and open an AMQP connection to the broker URL
//
- Connection connection = new Connection(url);
+ Connection connection = new Connection(url, connectionOptions);
connection.Open();
//
@@ -128,9 +132,15 @@ namespace Org.Apache.Qpid.Messaging.examples
sender.Send(message, true);
//
+ // Wait until broker receives all messages.
+ //
+ session.Sync();
+
+ //
// Close the connection.
//
connection.Close();
+ return 0;
}
}
}
diff --git a/cpp/bindings/qpid/dotnet/examples/visualbasic.example.client/visualbasic.example.client.vb b/cpp/bindings/qpid/dotnet/examples/visualbasic.example.client/visualbasic.example.client.vb
index ccdc0d673c..f32cfd8bce 100644
--- a/cpp/bindings/qpid/dotnet/examples/visualbasic.example.client/visualbasic.example.client.vb
+++ b/cpp/bindings/qpid/dotnet/examples/visualbasic.example.client/visualbasic.example.client.vb
@@ -24,14 +24,16 @@ Imports Org.Apache.Qpid.Messaging
Namespace Org.Apache.Qpid.Messaging.Examples
Module Module1
Class Client
- Public Shared Sub Main(ByVal args() As String)
+ Public Shared Function Main(ByVal args() As String) As Integer
Dim url As String = "amqp:tcp:127.0.0.1:5672"
+ Dim connectionOptions As String = ""
If args.Length > 0 Then url = args(0)
+ If args.Length > 1 Then connectionOptions = args(1)
Dim connection As Connection
Try
- connection = New Connection(url)
+ connection = New Connection(url, connectionOptions)
connection.Open()
Dim session As Session = connection.CreateSession()
@@ -58,12 +60,13 @@ Namespace Org.Apache.Qpid.Messaging.Examples
Console.WriteLine("{0} -> {1}", request.GetContent(), response.GetContent())
Next i
connection.Close()
-
+ Main = 0
Catch e As Exception
Console.WriteLine("Exception {0}.", e)
connection.Close()
+ Main = 1
End Try
- End Sub
+ End Function
End Class
End Module
End Namespace