2009-05-21 Michael Barker <mike@middlesoft.co.uk>
authorMichael Barker <mike@middlesoft.co.uk>
Thu, 21 May 2009 06:40:41 +0000 (06:40 -0000)
committerMichael Barker <mike@middlesoft.co.uk>
Thu, 21 May 2009 06:40:41 +0000 (06:40 -0000)
Updated to version 1.5.3 of the RabbitMQ libraries.

2009-05-20  Michael Barker  <mike@middlesoft.co.uk>

        * RabbitMQMessageEnumerator.cs:  Removed references to realms & tickets.
        * RabbitMQMessageQueue.cs:  Removed references to realms & tickets.

svn path=/trunk/mcs/; revision=134509

147 files changed:
mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ/ChangeLog
mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ/RabbitMQMessageEnumerator.cs
mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ/RabbitMQMessageQueue.cs
mcs/class/RabbitMQ.Client/ChangeLog
mcs/class/RabbitMQ.Client/docs/specs/Makefile
mcs/class/RabbitMQ.Client/docs/specs/amqp0-8.xml
mcs/class/RabbitMQ.Client/docs/specs/autogenerated-api-0-8.cs
mcs/class/RabbitMQ.Client/docs/specs/autogenerated-api-0-9.cs
mcs/class/RabbitMQ.Client/docs/specs/autogenerated-api-qpid-0-8.cs
mcs/class/RabbitMQ.Client/src/apigen/AmqpClass.cs
mcs/class/RabbitMQ.Client/src/apigen/AmqpEntity.cs
mcs/class/RabbitMQ.Client/src/apigen/AmqpField.cs
mcs/class/RabbitMQ.Client/src/apigen/AmqpMethod.cs
mcs/class/RabbitMQ.Client/src/apigen/Apigen.cs
mcs/class/RabbitMQ.Client/src/apigen/Makefile
mcs/class/RabbitMQ.Client/src/bootstrap/Makefile [deleted file]
mcs/class/RabbitMQ.Client/src/bootstrap/apigen-bootstrap.dll.sources [deleted file]
mcs/class/RabbitMQ.Client/src/client/RabbitMQ.Client.dll.sources
mcs/class/RabbitMQ.Client/src/client/api/AmqpTcpEndpoint.cs
mcs/class/RabbitMQ.Client/src/client/api/AmqpTimestamp.cs
mcs/class/RabbitMQ.Client/src/client/api/AmqpVersion.cs
mcs/class/RabbitMQ.Client/src/client/api/BinaryTableValue.cs
mcs/class/RabbitMQ.Client/src/client/api/ConnectionFactory.cs
mcs/class/RabbitMQ.Client/src/client/api/ConnectionParameters.cs
mcs/class/RabbitMQ.Client/src/client/api/DefaultBasicConsumer.cs
mcs/class/RabbitMQ.Client/src/client/api/ExchangeType.cs
mcs/class/RabbitMQ.Client/src/client/api/IBasicConsumer.cs
mcs/class/RabbitMQ.Client/src/client/api/IBasicProperties.cs
mcs/class/RabbitMQ.Client/src/client/api/IConnection.cs
mcs/class/RabbitMQ.Client/src/client/api/IContentHeader.cs
mcs/class/RabbitMQ.Client/src/client/api/IFileProperties.cs
mcs/class/RabbitMQ.Client/src/client/api/IMethod.cs
mcs/class/RabbitMQ.Client/src/client/api/IModel.cs
mcs/class/RabbitMQ.Client/src/client/api/IProtocol.cs
mcs/class/RabbitMQ.Client/src/client/api/IStreamProperties.cs
mcs/class/RabbitMQ.Client/src/client/api/Protocols.cs
mcs/class/RabbitMQ.Client/src/client/api/PublicationAddress.cs
mcs/class/RabbitMQ.Client/src/client/api/QueueingBasicConsumer.cs
mcs/class/RabbitMQ.Client/src/client/api/ShutdownEventArgs.cs
mcs/class/RabbitMQ.Client/src/client/api/ShutdownInitiator.cs
mcs/class/RabbitMQ.Client/src/client/api/ShutdownReportEntry.cs
mcs/class/RabbitMQ.Client/src/client/content/BasicMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/BasicMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/BytesMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/BytesMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/BytesWireFormatting.cs
mcs/class/RabbitMQ.Client/src/client/content/IBytesMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/IBytesMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/IMapMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/IMapMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/IMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/IMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/IStreamMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/IStreamMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/MapMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/MapMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/MapWireFormatting.cs
mcs/class/RabbitMQ.Client/src/client/content/PrimitiveParser.cs
mcs/class/RabbitMQ.Client/src/client/content/StreamMessageBuilder.cs
mcs/class/RabbitMQ.Client/src/client/content/StreamMessageReader.cs
mcs/class/RabbitMQ.Client/src/client/content/StreamWireFormatting.cs
mcs/class/RabbitMQ.Client/src/client/events/BasicDeliverEventArgs.cs
mcs/class/RabbitMQ.Client/src/client/events/BasicDeliverEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/BasicReturnEventArgs.cs
mcs/class/RabbitMQ.Client/src/client/events/BasicReturnEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/CallbackExceptionEventArgs.cs
mcs/class/RabbitMQ.Client/src/client/events/CallbackExceptionEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/ConnectionShutdownEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/ConsumerEventArgs.cs
mcs/class/RabbitMQ.Client/src/client/events/ConsumerEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/ConsumerShutdownEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/events/EventingBasicConsumer.cs
mcs/class/RabbitMQ.Client/src/client/events/ModelShutdownEventHandler.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/AlreadyClosedException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/BrokerUnreachableException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/ChannelAllocationException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/OperationInterruptedException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/PacketNotRecognizedException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/ProtocolVersionMismatchException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/UnexpectedMethodException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/UnsupportedMethodException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/UnsupportedMethodFieldException.cs
mcs/class/RabbitMQ.Client/src/client/exceptions/WireFormattingException.cs
mcs/class/RabbitMQ.Client/src/client/impl/AbstractProtocolBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/BasicProperties.cs
mcs/class/RabbitMQ.Client/src/client/impl/BodyTooLongException.cs
mcs/class/RabbitMQ.Client/src/client/impl/ChannelErrorException.cs
mcs/class/RabbitMQ.Client/src/client/impl/Command.cs
mcs/class/RabbitMQ.Client/src/client/impl/CommandAssembler.cs
mcs/class/RabbitMQ.Client/src/client/impl/ConnectionBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/ConnectionStartDetails.cs
mcs/class/RabbitMQ.Client/src/client/impl/ContentHeaderBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/ContentHeaderPropertyReader.cs
mcs/class/RabbitMQ.Client/src/client/impl/ContentHeaderPropertyWriter.cs
mcs/class/RabbitMQ.Client/src/client/impl/FileProperties.cs
mcs/class/RabbitMQ.Client/src/client/impl/Frame.cs
mcs/class/RabbitMQ.Client/src/client/impl/HardProtocolException.cs
mcs/class/RabbitMQ.Client/src/client/impl/IFrameHandler.cs
mcs/class/RabbitMQ.Client/src/client/impl/IRpcContinuation.cs
mcs/class/RabbitMQ.Client/src/client/impl/ISession.cs
mcs/class/RabbitMQ.Client/src/client/impl/MainSession.cs
mcs/class/RabbitMQ.Client/src/client/impl/MalformedFrameException.cs
mcs/class/RabbitMQ.Client/src/client/impl/MethodArgumentReader.cs
mcs/class/RabbitMQ.Client/src/client/impl/MethodArgumentWriter.cs
mcs/class/RabbitMQ.Client/src/client/impl/MethodBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/ModelBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/ProtocolException.cs
mcs/class/RabbitMQ.Client/src/client/impl/QuiescingSession.cs
mcs/class/RabbitMQ.Client/src/client/impl/RedirectException.cs
mcs/class/RabbitMQ.Client/src/client/impl/RpcContinuationQueue.cs
mcs/class/RabbitMQ.Client/src/client/impl/Session.cs
mcs/class/RabbitMQ.Client/src/client/impl/SessionBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/SessionManager.cs
mcs/class/RabbitMQ.Client/src/client/impl/ShutdownContinuation.cs
mcs/class/RabbitMQ.Client/src/client/impl/SimpleBlockingRpcContinuation.cs
mcs/class/RabbitMQ.Client/src/client/impl/SocketFrameHandler_0_9.cs
mcs/class/RabbitMQ.Client/src/client/impl/SoftProtocolException.cs
mcs/class/RabbitMQ.Client/src/client/impl/StreamProperties.cs
mcs/class/RabbitMQ.Client/src/client/impl/SyntaxError.cs
mcs/class/RabbitMQ.Client/src/client/impl/UnexpectedFrameException.cs
mcs/class/RabbitMQ.Client/src/client/impl/UnknownClassOrMethodException.cs
mcs/class/RabbitMQ.Client/src/client/impl/WireFormatting.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_8/Connection.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_8/ProtocolBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_8qpid/Connection.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_8qpid/ProtocolBase.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_9/Connection.cs
mcs/class/RabbitMQ.Client/src/client/impl/v0_9/ProtocolBase.cs
mcs/class/RabbitMQ.Client/src/client/messagepatterns/SimpleRpcClient.cs
mcs/class/RabbitMQ.Client/src/client/messagepatterns/SimpleRpcServer.cs
mcs/class/RabbitMQ.Client/src/client/messagepatterns/Subscription.cs
mcs/class/RabbitMQ.Client/src/examples/AddClient.cs
mcs/class/RabbitMQ.Client/src/examples/AddServer.cs
mcs/class/RabbitMQ.Client/src/examples/DeclareQueue.cs
mcs/class/RabbitMQ.Client/src/examples/ExceptionTest.cs
mcs/class/RabbitMQ.Client/src/examples/LogTail.cs
mcs/class/RabbitMQ.Client/src/examples/SendMap.cs
mcs/class/RabbitMQ.Client/src/examples/SendString.cs
mcs/class/RabbitMQ.Client/src/examples/SingleGet.cs
mcs/class/RabbitMQ.Client/src/util/BlockingCell.cs
mcs/class/RabbitMQ.Client/src/util/DebugUtil.cs
mcs/class/RabbitMQ.Client/src/util/Either.cs
mcs/class/RabbitMQ.Client/src/util/NetworkBinaryReader.cs
mcs/class/RabbitMQ.Client/src/util/NetworkBinaryWriter.cs
mcs/class/RabbitMQ.Client/src/util/Semaphore.cs
mcs/class/RabbitMQ.Client/src/util/SharedQueue.cs
mcs/class/RabbitMQ.Client/src/util/XmlUtil.cs

index c76ac7ac199d74e72c46a6629ad22054747b8c7e..7cefeaa3aecff64642fedc4e1333d6d00922b8d6 100644 (file)
@@ -47,4 +47,9 @@
        
 2009-05-19  Michael Barker  <mike@middlesoft.co.uk>
 
-       * RabbitMQMessageQueue.cs: Added comments.
\ No newline at end of file
+       * RabbitMQMessageQueue.cs: Added comments.
+       
+2009-05-20  Michael Barker  <mike@middlesoft.co.uk>
+
+       * RabbitMQMessageEnumerator.cs:  Removed references to realms & tickets.
+       * RabbitMQMessageQueue.cs:  Removed references to realms & tickets.
\ No newline at end of file
index 30d0ea3542b41c4eed413985018571f0166ecfb1..93be9fd83fe424c4ec86dec10db6d5b7490a6735 100644 (file)
@@ -117,10 +117,10 @@ namespace Mono.Messaging.RabbitMQ {
                                if (subscription == null) {
                                        IModel ch = Model;
                                        
-                                       ushort ticket = ch.AccessRequest ("/data");
-                                       string finalName = ch.QueueDeclare (ticket, qRef.Queue, false);
+                                       //ushort ticket = ch.AccessRequest ("/data");
+                                       string finalName = ch.QueueDeclare (qRef.Queue, false);
                                        
-                                       subscription = new Subscription (ch, ticket, finalName);
+                                       subscription = new Subscription (ch, finalName);
                                }
                                
                                return subscription;
index 3d5fc614ffb291d6ae9225ed11f334a4cdd92491..ea35c687760439bf236bd51092df9ea1456014b9 100644 (file)
@@ -209,8 +209,7 @@ namespace Mono.Messaging.RabbitMQ {
                        
                        using (IConnection cn = cf.CreateConnection (qRef.Host)) {
                                using (IModel model = cn.CreateModel ()) {
-                                       ushort ticket = model.AccessRequest (realm);
-                                       model.QueueDelete (ticket, qRef.Queue, false, false, false);
+                                       model.QueueDelete (qRef.Queue, false, false, false);
                                }
                        }
                }                       
@@ -298,11 +297,10 @@ namespace Mono.Messaging.RabbitMQ {
                
                private void Send (IModel model, IMessage msg)
                {
-                       ushort ticket = model.AccessRequest ("/data");
-                       string finalName = model.QueueDeclare (ticket, QRef.Queue, true);
+                       string finalName = model.QueueDeclare (QRef.Queue, true);
                        IMessageBuilder mb = helper.WriteMessage (model, msg);
 
-                       model.BasicPublish (ticket, "", finalName,
+                       model.BasicPublish ("", finalName,
                                            (IBasicProperties) mb.GetContentHeader(),
                                            mb.GetContentBody ());
                }
@@ -313,8 +311,7 @@ namespace Mono.Messaging.RabbitMQ {
 
                        using (IConnection cn = cf.CreateConnection (QRef.Host)) {
                                using (IModel model = cn.CreateModel ()) {
-                                       ushort ticket = model.AccessRequest (realm);
-                                       model.QueuePurge (ticket, QRef.Queue, false);
+                                       model.QueuePurge (QRef.Queue, false);
                                }
                        }
                }
@@ -677,10 +674,9 @@ namespace Mono.Messaging.RabbitMQ {
                
                private IMessage Receive (IModel model, int timeout, bool doAck)
                {
-                       ushort ticket = model.AccessRequest (realm);
-                       string finalName = model.QueueDeclare (ticket, QRef.Queue, false);
+                       string finalName = model.QueueDeclare (QRef.Queue, false);
                        
-                       using (Subscription sub = new Subscription (model, ticket, finalName)) {
+                       using (Subscription sub = new Subscription (model, finalName)) {
                                BasicDeliverEventArgs result;
                                if (sub.Next (timeout, out result)) {
                                        IMessage m = helper.ReadMessage (QRef, result);
@@ -696,10 +692,9 @@ namespace Mono.Messaging.RabbitMQ {
                private IMessage Receive (IModel model, int timeout, 
                                          bool doAck, IsMatch matcher)
                {
-                       ushort ticket = model.AccessRequest (realm);
-                       string finalName = model.QueueDeclare (ticket, QRef.Queue, false);
+                       string finalName = model.QueueDeclare (QRef.Queue, false);
                        
-                       using (Subscription sub = new Subscription (model, ticket, finalName)) {
+                       using (Subscription sub = new Subscription (model, finalName)) {
                                BasicDeliverEventArgs result;
                                while (sub.Next (timeout, out result)) {
                                        
index e6b29c1b3571637bb0a3f9e3150071a97f4d6473..4dfdb797ff674b20768256c2d2c1a5072f6a8024 100644 (file)
@@ -39,3 +39,6 @@
        RabbitMQ.Client assembly from RabbitMQ project.
        http://www.rabbitmq.com/
 
+2009-05-21  Michael Barker  <mike@middlesoft.co.uk>
+
+       Updated to version 1.5.3 of the RabbitMQ libraries.
index 4b01a833b0d1922a334d6cd419138ec22395ea1c..f5c7f91e4cb6000c27df23056546558a4697cb9f 100644 (file)
@@ -20,6 +20,7 @@ install-local:
 
 clean-local:
        rm -f ../../src/apigen/apigen-bootstrap.dll
+       rm autogenerated-api*.cs
        
 test-local:
 
index 8ad0f17a2c28ff939ee8a8ff36a49b63958c17e1..326ce992a1c374b030abf1b1ebedf7bec911e3eb 100644 (file)
@@ -1,5 +1,6 @@
 <?xml version="1.0"?>
-
+<!-- WARNING: Modified from the official 0-8 specification XML by
+     the addition of queue.unbind, queue.unbind-ok -->
 <!--
 Copyright Notice
 ================
@@ -1618,6 +1619,59 @@ localised reply text
   </doc>
       <chassis name="client" implement="MUST"/>
     </method>
+
+    <!-- Unofficial additions to the 0-8 protocol, lifted from the 0-9
+         protocol specification: queue.unbind, queue.unbind-ok -->
+
+    <method name = "unbind" synchronous = "1" index = "50" label = "unbind a queue from an exchange">
+      <doc>This method unbinds a queue from an exchange.</doc>
+      <rule name = "01">
+        <doc>If a unbind fails, the server MUST raise a connection exception.</doc>
+      </rule>
+      <chassis name="server" implement="MUST"/>
+      <response name="unbind-ok"/>
+
+      <field name = "ticket" domain = "access ticket">
+        <doc>
+          The client provides a valid access ticket giving "active"
+          access rights to the queue's access realm.
+        </doc>
+      </field>
+
+      <field name = "queue" domain = "queue name">
+        <doc>Specifies the name of the queue to unbind.</doc>
+        <rule name = "02">
+          <doc>
+            If the queue does not exist the server MUST raise a channel exception
+            with reply code 404 (not found).
+          </doc>
+        </rule>
+      </field>
+
+      <field name = "exchange" domain = "exchange name">
+        <doc>The name of the exchange to unbind from.</doc>
+        <rule name = "03">
+          <doc>
+            If the exchange does not exist the server MUST raise a channel
+            exception with reply code 404 (not found).
+          </doc>
+        </rule>
+      </field>
+
+      <field name = "routing key" domain = "shortstr" label = "routing key of binding">
+        <doc>Specifies the routing key of the binding to unbind.</doc>
+      </field>
+
+      <field name = "arguments" domain = "table" label = "arguments of binding">
+        <doc>Specifies the arguments of the binding to unbind.</doc>
+      </field>
+    </method>
+
+    <method name = "unbind-ok" synchronous = "1" index = "51" label = "confirm unbind successful">
+      <doc>This method confirms that the unbind was successful.</doc>
+      <chassis name = "client" implement = "MUST"/>
+    </method>
+
     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
     <method name="purge" synchronous="1" index="30">
   purge a queue
index 7ab99176d182542aefd2c03e4685e6a447f5f2aa..19dbf65a94ab8079a915866a4c1a9e4522ab5af1 100644 (file)
@@ -185,6 +185,16 @@ namespace RabbitMQ.Client.Framing.v0_8 {
               result.ReadArgumentsFrom(new RabbitMQ.Client.Impl.MethodArgumentReader(reader));
               return result;
             }
+            case 50: {
+              RabbitMQ.Client.Framing.Impl.v0_8.QueueUnbind result = new RabbitMQ.Client.Framing.Impl.v0_8.QueueUnbind();
+              result.ReadArgumentsFrom(new RabbitMQ.Client.Impl.MethodArgumentReader(reader));
+              return result;
+            }
+            case 51: {
+              RabbitMQ.Client.Framing.Impl.v0_8.QueueUnbindOk result = new RabbitMQ.Client.Framing.Impl.v0_8.QueueUnbindOk();
+              result.ReadArgumentsFrom(new RabbitMQ.Client.Impl.MethodArgumentReader(reader));
+              return result;
+            }
             case 30: {
               RabbitMQ.Client.Framing.Impl.v0_8.QueuePurge result = new RabbitMQ.Client.Framing.Impl.v0_8.QueuePurge();
               result.ReadArgumentsFrom(new RabbitMQ.Client.Impl.MethodArgumentReader(reader));
@@ -1367,6 +1377,41 @@ namespace RabbitMQ.Client.Framing.v0_8 {
   /// </remarks>
   public interface IQueueBindOk: IMethod {
   }
+  /// <summary>Autogenerated type. AMQP specification method "queue.unbind".</summary>
+  /// <remarks>
+  /// This method unbinds a queue from an exchange.
+  /// </remarks>
+  public interface IQueueUnbind: IMethod {
+    /// <summary>
+    /// 
+    ///           The client provides a valid access ticket giving "active"
+    ///           access rights to the queue's access realm.
+    ///         
+    /// </summary>
+    ushort Ticket { get; }
+    /// <summary>
+    /// Specifies the name of the queue to unbind.
+    /// </summary>
+    string Queue { get; }
+    /// <summary>
+    /// The name of the exchange to unbind from.
+    /// </summary>
+    string Exchange { get; }
+    /// <summary>
+    /// Specifies the routing key of the binding to unbind.
+    /// </summary>
+    string RoutingKey { get; }
+    /// <summary>
+    /// Specifies the arguments of the binding to unbind.
+    /// </summary>
+    System.Collections.IDictionary Arguments { get; }
+  }
+  /// <summary>Autogenerated type. AMQP specification method "queue.unbind-ok".</summary>
+  /// <remarks>
+  /// This method confirms that the unbind was successful.
+  /// </remarks>
+  public interface IQueueUnbindOk: IMethod {
+  }
   /// <summary>Autogenerated type. AMQP specification method "queue.purge".</summary>
   /// <remarks>
   /// 
@@ -4908,6 +4953,97 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
     }
   }
   /// <summary>Autogenerated type. Private implementation class - do not use directly.</summary>
+  public class QueueUnbind: RabbitMQ.Client.Impl.MethodBase, IQueueUnbind {
+    public const int ClassId = 50;
+    public const int MethodId = 50;
+
+    public ushort m_ticket;
+    public string m_queue;
+    public string m_exchange;
+    public string m_routingKey;
+    public System.Collections.IDictionary m_arguments;
+
+    ushort IQueueUnbind.Ticket { get { return m_ticket; } }
+    string IQueueUnbind.Queue { get { return m_queue; } }
+    string IQueueUnbind.Exchange { get { return m_exchange; } }
+    string IQueueUnbind.RoutingKey { get { return m_routingKey; } }
+    System.Collections.IDictionary IQueueUnbind.Arguments { get { return m_arguments; } }
+
+    public QueueUnbind() {}
+    public QueueUnbind(
+      ushort initTicket,
+      string initQueue,
+      string initExchange,
+      string initRoutingKey,
+      System.Collections.IDictionary initArguments)
+    {
+      m_ticket = initTicket;
+      m_queue = initQueue;
+      m_exchange = initExchange;
+      m_routingKey = initRoutingKey;
+      m_arguments = initArguments;
+    }
+
+    public override int ProtocolClassId { get { return 50; } }
+    public override int ProtocolMethodId { get { return 50; } }
+    public override string ProtocolMethodName { get { return "queue.unbind"; } }
+    public override bool HasContent { get { return false; } }
+
+    public override void ReadArgumentsFrom(RabbitMQ.Client.Impl.MethodArgumentReader reader) {
+      m_ticket = reader.ReadShort();
+      m_queue = reader.ReadShortstr();
+      m_exchange = reader.ReadShortstr();
+      m_routingKey = reader.ReadShortstr();
+      m_arguments = reader.ReadTable();
+    }
+
+    public override void WriteArgumentsTo(RabbitMQ.Client.Impl.MethodArgumentWriter writer) {
+      writer.WriteShort(m_ticket);
+      writer.WriteShortstr(m_queue);
+      writer.WriteShortstr(m_exchange);
+      writer.WriteShortstr(m_routingKey);
+      writer.WriteTable(m_arguments);
+    }
+
+    public override void AppendArgumentDebugStringTo(System.Text.StringBuilder sb) {
+      sb.Append("(");
+      sb.Append(m_ticket); sb.Append(",");
+      sb.Append(m_queue); sb.Append(",");
+      sb.Append(m_exchange); sb.Append(",");
+      sb.Append(m_routingKey); sb.Append(",");
+      sb.Append(m_arguments);
+      sb.Append(")");
+    }
+  }
+  /// <summary>Autogenerated type. Private implementation class - do not use directly.</summary>
+  public class QueueUnbindOk: RabbitMQ.Client.Impl.MethodBase, IQueueUnbindOk {
+    public const int ClassId = 50;
+    public const int MethodId = 51;
+
+
+
+    public QueueUnbindOk(
+)
+    {
+    }
+
+    public override int ProtocolClassId { get { return 50; } }
+    public override int ProtocolMethodId { get { return 51; } }
+    public override string ProtocolMethodName { get { return "queue.unbind-ok"; } }
+    public override bool HasContent { get { return false; } }
+
+    public override void ReadArgumentsFrom(RabbitMQ.Client.Impl.MethodArgumentReader reader) {
+    }
+
+    public override void WriteArgumentsTo(RabbitMQ.Client.Impl.MethodArgumentWriter writer) {
+    }
+
+    public override void AppendArgumentDebugStringTo(System.Text.StringBuilder sb) {
+      sb.Append("(");
+      sb.Append(")");
+    }
+  }
+  /// <summary>Autogenerated type. Private implementation class - do not use directly.</summary>
   public class QueuePurge: RabbitMQ.Client.Impl.MethodBase, IQueuePurge {
     public const int ClassId = 50;
     public const int MethodId = 30;
@@ -7556,28 +7692,7 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
 
   public class Model: RabbitMQ.Client.Impl.ModelBase {
     public Model(RabbitMQ.Client.Impl.ISession session): base(session) {}
-    public override System.UInt16 _Private_AccessRequest(
-      System.String @realm,
-      System.Boolean @exclusive,
-      System.Boolean @passive,
-      System.Boolean @active,
-      System.Boolean @write,
-      System.Boolean @read)
-    {
-      AccessRequest __req = new AccessRequest();
-      __req.m_realm = @realm;
-      __req.m_exclusive = @exclusive;
-      __req.m_passive = @passive;
-      __req.m_active = @active;
-      __req.m_write = @write;
-      __req.m_read = @read;
-      RabbitMQ.Client.Impl.MethodBase __repBase = ModelRpc(__req,null,null);
-      AccessRequestOk __rep = __repBase as AccessRequestOk;
-      if (__rep == null) throw new UnexpectedMethodException(__repBase);
-      return __rep.m_ticket;
-    }
     public override void _Private_BasicPublish(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @routingKey,
       System.Boolean @mandatory,
@@ -7586,7 +7701,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       System.Byte[] @body)
     {
       BasicPublish __req = new BasicPublish();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
       __req.m_mandatory = @mandatory;
@@ -7594,7 +7708,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       ModelSend(__req, (BasicProperties) basicProperties,body);
     }
     public override void _Private_BasicConsume(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @consumerTag,
       System.Boolean @noLocal,
@@ -7604,7 +7717,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       System.Collections.IDictionary @filter)
     {
       BasicConsume __req = new BasicConsume();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_consumerTag = @consumerTag;
       __req.m_noLocal = @noLocal;
@@ -7653,16 +7765,19 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       ModelSend(__req,null,null);
     }
     public override void _Private_BasicGet(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @noAck)
     {
       BasicGet __req = new BasicGet();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_noAck = @noAck;
       ModelSend(__req,null,null);
     }
+    public override void _Private_ChannelFlowOk()
+    {
+      ChannelFlowOk __req = new ChannelFlowOk();
+      ModelSend(__req,null,null);
+    }
     public override RabbitMQ.Client.Impl.ConnectionTuneDetails ConnectionStartOk(
       System.Collections.IDictionary @clientProperties,
       System.String @mechanism,
@@ -7747,7 +7862,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDeclare(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @type,
       System.Boolean @passive,
@@ -7758,7 +7872,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       System.Collections.IDictionary @arguments)
     {
       ExchangeDeclare __req = new ExchangeDeclare();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_type = @type;
       __req.m_passive = @passive;
@@ -7775,13 +7888,11 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDelete(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.Boolean @ifUnused,
       System.Boolean @nowait)
     {
       ExchangeDelete __req = new ExchangeDelete();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_ifUnused = @ifUnused;
       __req.m_nowait = @nowait;
@@ -7793,7 +7904,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override System.String QueueDeclare(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @passive,
       System.Boolean @durable,
@@ -7803,7 +7913,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       System.Collections.IDictionary @arguments)
     {
       QueueDeclare __req = new QueueDeclare();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_passive = @passive;
       __req.m_durable = @durable;
@@ -7821,7 +7930,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       return __rep.m_queue;
     }
     public override void QueueBind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
@@ -7829,7 +7937,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       System.Collections.IDictionary @arguments)
     {
       QueueBind __req = new QueueBind();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
@@ -7843,21 +7950,25 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void QueueUnbind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
       System.Collections.IDictionary @arguments)
     {
-      throw new UnsupportedMethodException("QueueUnbind");
+      QueueUnbind __req = new QueueUnbind();
+      __req.m_queue = @queue;
+      __req.m_exchange = @exchange;
+      __req.m_routingKey = @routingKey;
+      __req.m_arguments = @arguments;
+      RabbitMQ.Client.Impl.MethodBase __repBase = ModelRpc(__req,null,null);
+      QueueUnbindOk __rep = __repBase as QueueUnbindOk;
+      if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override System.UInt32 QueuePurge(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @nowait)
     {
       QueuePurge __req = new QueuePurge();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_nowait = @nowait;
       if (nowait) {
@@ -7870,14 +7981,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
       return __rep.m_messageCount;
     }
     public override System.UInt32 QueueDelete(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @ifUnused,
       System.Boolean @ifEmpty,
       System.Boolean @nowait)
     {
       QueueDelete __req = new QueueDelete();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_ifUnused = @ifUnused;
       __req.m_ifEmpty = @ifEmpty;
@@ -8020,6 +8129,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
             cmd.Body);
           return true;
         }
+        case 1310740: {
+          ChannelFlow __impl = (ChannelFlow) __method;
+          HandleChannelFlow(
+            __impl.m_active);
+          return true;
+        }
         case 1310760: {
           ChannelClose __impl = (ChannelClose) __method;
           HandleChannelClose(
index d42c0f8c30ddaff31fdc751d6474568e322c8281..5b6bd1d24c6e5173400663e6b5ce02ae1bc17ffb 100644 (file)
@@ -8381,28 +8381,7 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
 
   public class Model: RabbitMQ.Client.Impl.ModelBase {
     public Model(RabbitMQ.Client.Impl.ISession session): base(session) {}
-    public override System.UInt16 _Private_AccessRequest(
-      System.String @realm,
-      System.Boolean @exclusive,
-      System.Boolean @passive,
-      System.Boolean @active,
-      System.Boolean @write,
-      System.Boolean @read)
-    {
-      AccessRequest __req = new AccessRequest();
-      __req.m_realm = @realm;
-      __req.m_exclusive = @exclusive;
-      __req.m_passive = @passive;
-      __req.m_active = @active;
-      __req.m_write = @write;
-      __req.m_read = @read;
-      RabbitMQ.Client.Impl.MethodBase __repBase = ModelRpc(__req,null,null);
-      AccessRequestOk __rep = __repBase as AccessRequestOk;
-      if (__rep == null) throw new UnexpectedMethodException(__repBase);
-      return __rep.m_ticket;
-    }
     public override void _Private_BasicPublish(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @routingKey,
       System.Boolean @mandatory,
@@ -8411,7 +8390,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       System.Byte[] @body)
     {
       BasicPublish __req = new BasicPublish();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
       __req.m_mandatory = @mandatory;
@@ -8419,7 +8397,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       ModelSend(__req, (BasicProperties) basicProperties,body);
     }
     public override void _Private_BasicConsume(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @consumerTag,
       System.Boolean @noLocal,
@@ -8429,7 +8406,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       System.Collections.IDictionary @filter)
     {
       BasicConsume __req = new BasicConsume();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_consumerTag = @consumerTag;
       __req.m_noLocal = @noLocal;
@@ -8476,16 +8452,19 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       ModelSend(__req,null,null);
     }
     public override void _Private_BasicGet(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @noAck)
     {
       BasicGet __req = new BasicGet();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_noAck = @noAck;
       ModelSend(__req,null,null);
     }
+    public override void _Private_ChannelFlowOk()
+    {
+      ChannelFlowOk __req = new ChannelFlowOk();
+      ModelSend(__req,null,null);
+    }
     public override RabbitMQ.Client.Impl.ConnectionTuneDetails ConnectionStartOk(
       System.Collections.IDictionary @clientProperties,
       System.String @mechanism,
@@ -8570,7 +8549,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDeclare(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @type,
       System.Boolean @passive,
@@ -8581,7 +8559,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       System.Collections.IDictionary @arguments)
     {
       ExchangeDeclare __req = new ExchangeDeclare();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_type = @type;
       __req.m_passive = @passive;
@@ -8598,13 +8575,11 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDelete(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.Boolean @ifUnused,
       System.Boolean @nowait)
     {
       ExchangeDelete __req = new ExchangeDelete();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_ifUnused = @ifUnused;
       __req.m_nowait = @nowait;
@@ -8616,7 +8591,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override System.String QueueDeclare(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @passive,
       System.Boolean @durable,
@@ -8626,7 +8600,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       System.Collections.IDictionary @arguments)
     {
       QueueDeclare __req = new QueueDeclare();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_passive = @passive;
       __req.m_durable = @durable;
@@ -8644,7 +8617,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       return __rep.m_queue;
     }
     public override void QueueBind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
@@ -8652,7 +8624,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       System.Collections.IDictionary @arguments)
     {
       QueueBind __req = new QueueBind();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
@@ -8666,14 +8637,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void QueueUnbind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
       System.Collections.IDictionary @arguments)
     {
       QueueUnbind __req = new QueueUnbind();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
@@ -8683,12 +8652,10 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override System.UInt32 QueuePurge(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @nowait)
     {
       QueuePurge __req = new QueuePurge();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_nowait = @nowait;
       if (nowait) {
@@ -8701,14 +8668,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
       return __rep.m_messageCount;
     }
     public override System.UInt32 QueueDelete(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @ifUnused,
       System.Boolean @ifEmpty,
       System.Boolean @nowait)
     {
       QueueDelete __req = new QueueDelete();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_ifUnused = @ifUnused;
       __req.m_ifEmpty = @ifEmpty;
@@ -8851,6 +8816,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
             cmd.Body);
           return true;
         }
+        case 1310740: {
+          ChannelFlow __impl = (ChannelFlow) __method;
+          HandleChannelFlow(
+            __impl.m_active);
+          return true;
+        }
         case 1310760: {
           ChannelClose __impl = (ChannelClose) __method;
           HandleChannelClose(
index d02cdbcc0005e6b7230f49e9e5c42c1eaf507e0f..75302f3eac3425387050efa1658ccd164962ada8 100644 (file)
@@ -7738,28 +7738,7 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
 
   public class Model: RabbitMQ.Client.Impl.ModelBase {
     public Model(RabbitMQ.Client.Impl.ISession session): base(session) {}
-    public override System.UInt16 _Private_AccessRequest(
-      System.String @realm,
-      System.Boolean @exclusive,
-      System.Boolean @passive,
-      System.Boolean @active,
-      System.Boolean @write,
-      System.Boolean @read)
-    {
-      AccessRequest __req = new AccessRequest();
-      __req.m_realm = @realm;
-      __req.m_exclusive = @exclusive;
-      __req.m_passive = @passive;
-      __req.m_active = @active;
-      __req.m_write = @write;
-      __req.m_read = @read;
-      RabbitMQ.Client.Impl.MethodBase __repBase = ModelRpc(__req,null,null);
-      AccessRequestOk __rep = __repBase as AccessRequestOk;
-      if (__rep == null) throw new UnexpectedMethodException(__repBase);
-      return __rep.m_ticket;
-    }
     public override void _Private_BasicPublish(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @routingKey,
       System.Boolean @mandatory,
@@ -7768,7 +7747,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       System.Byte[] @body)
     {
       BasicPublish __req = new BasicPublish();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
       __req.m_mandatory = @mandatory;
@@ -7776,7 +7754,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       ModelSend(__req, (BasicProperties) basicProperties,body);
     }
     public override void _Private_BasicConsume(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @consumerTag,
       System.Boolean @noLocal,
@@ -7786,7 +7763,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       System.Collections.IDictionary @filter)
     {
       BasicConsume __req = new BasicConsume();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_consumerTag = @consumerTag;
       __req.m_noLocal = @noLocal;
@@ -7833,16 +7809,19 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       ModelSend(__req,null,null);
     }
     public override void _Private_BasicGet(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @noAck)
     {
       BasicGet __req = new BasicGet();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_noAck = @noAck;
       ModelSend(__req,null,null);
     }
+    public override void _Private_ChannelFlowOk()
+    {
+      ChannelFlowOk __req = new ChannelFlowOk();
+      ModelSend(__req,null,null);
+    }
     public override RabbitMQ.Client.Impl.ConnectionTuneDetails ConnectionStartOk(
       System.Collections.IDictionary @clientProperties,
       System.String @mechanism,
@@ -7927,7 +7906,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDeclare(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.String @type,
       System.Boolean @passive,
@@ -7938,7 +7916,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       System.Collections.IDictionary @arguments)
     {
       ExchangeDeclare __req = new ExchangeDeclare();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_type = @type;
       __req.m_passive = @passive;
@@ -7955,13 +7932,11 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void ExchangeDelete(
-      System.UInt16 @ticket,
       System.String @exchange,
       System.Boolean @ifUnused,
       System.Boolean @nowait)
     {
       ExchangeDelete __req = new ExchangeDelete();
-      __req.m_ticket = @ticket;
       __req.m_exchange = @exchange;
       __req.m_ifUnused = @ifUnused;
       __req.m_nowait = @nowait;
@@ -7973,7 +7948,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override System.String QueueDeclare(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @passive,
       System.Boolean @durable,
@@ -7983,7 +7957,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       System.Collections.IDictionary @arguments)
     {
       QueueDeclare __req = new QueueDeclare();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_passive = @passive;
       __req.m_durable = @durable;
@@ -8001,7 +7974,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       return __rep.m_queue;
     }
     public override void QueueBind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
@@ -8009,7 +7981,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       System.Collections.IDictionary @arguments)
     {
       QueueBind __req = new QueueBind();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_exchange = @exchange;
       __req.m_routingKey = @routingKey;
@@ -8023,7 +7994,6 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       if (__rep == null) throw new UnexpectedMethodException(__repBase);
     }
     public override void QueueUnbind(
-      System.UInt16 @ticket,
       System.String @queue,
       System.String @exchange,
       System.String @routingKey,
@@ -8032,12 +8002,10 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       throw new UnsupportedMethodException("QueueUnbind");
     }
     public override System.UInt32 QueuePurge(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @nowait)
     {
       QueuePurge __req = new QueuePurge();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_nowait = @nowait;
       if (nowait) {
@@ -8050,14 +8018,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
       return __rep.m_messageCount;
     }
     public override System.UInt32 QueueDelete(
-      System.UInt16 @ticket,
       System.String @queue,
       System.Boolean @ifUnused,
       System.Boolean @ifEmpty,
       System.Boolean @nowait)
     {
       QueueDelete __req = new QueueDelete();
-      __req.m_ticket = @ticket;
       __req.m_queue = @queue;
       __req.m_ifUnused = @ifUnused;
       __req.m_ifEmpty = @ifEmpty;
@@ -8202,6 +8168,12 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
             cmd.Body);
           return true;
         }
+        case 1310740: {
+          ChannelFlow __impl = (ChannelFlow) __method;
+          HandleChannelFlow(
+            __impl.m_active);
+          return true;
+        }
         case 1310760: {
           ChannelClose __impl = (ChannelClose) __method;
           HandleChannelClose(
index d682f22d9fc9292796218d7347f039bfd19d68f3..25a0406c008c26b6871e9d9cda1c90d52f488794 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index e1e9c952a19daecff7c610131445763fac7b2fbf..174d00242a70d2768d0bca98af54b401f088912d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 778dd3b7956bdeb453f8a2ad9c7ae502dfb51909..b69aef194c5a7cb32e90745be71f80123038dcf2 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index f35c131acd3177288844fc8d3cb2bb6b1b4c59ad..0672eaee424a7124ed345f137dc4bac18096b7eb 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 69ab87a6126cc4d4f6d89a018193589ce1f527cb..fe4715d715cc96642b7793672adfaac0c326c142 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 162e9b10b9e2aaa8133d4e11a375b74d00c036b1..9d5e49a318156426af592e19ce0c9142f98f731c 100644 (file)
@@ -7,7 +7,6 @@ PROGRAM = RabbitMQ.Client.Apigen.exe
 
 LOCAL_MCS_FLAGS = /r:System.dll     \
                   /r:System.Xml.dll \
-                  /r:apigen-bootstrap.dll \
                   /main:RabbitMQ.Client.Apigen.Apigen
 
 include ../../../../build/executable.make
diff --git a/mcs/class/RabbitMQ.Client/src/bootstrap/Makefile b/mcs/class/RabbitMQ.Client/src/bootstrap/Makefile
deleted file mode 100644 (file)
index 05c6e50..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-thisdir := class/RabbitMQ.Client/src/apigen
-SUBDIRS =
-include ../../../../build/rules.make
-
-LIBRARY = apigen-bootstrap.dll
-LIB_MCS_FLAGS = /r:System.dll
-NO_TEST = yes
-NO_SIGN_ASSEMBLY = yes
-
-include ../../../../build/library.make
diff --git a/mcs/class/RabbitMQ.Client/src/bootstrap/apigen-bootstrap.dll.sources b/mcs/class/RabbitMQ.Client/src/bootstrap/apigen-bootstrap.dll.sources
deleted file mode 100644 (file)
index f55f71f..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-../client/api/IModel.cs
-../client/api/IContentHeader.cs
-../client/api/IBasicProperties.cs
-../client/api/IFileProperties.cs
-../client/api/IStreamProperties.cs
-../client/api/AmqpTimestamp.cs
-../client/api/IBasicConsumer.cs
-../client/api/ShutdownEventArgs.cs
-../client/api/ShutdownInitiator.cs
-../client/api/PublicationAddress.cs
-../client/events/BasicReturnEventArgs.cs
-../client/events/BasicReturnEventHandler.cs
-../client/events/CallbackExceptionEventArgs.cs
-../client/events/CallbackExceptionEventHandler.cs
-../client/events/ModelShutdownEventHandler.cs
index 18936d47a3891209686dd049b51bbf2ea0650302..2f4ed36868d3aaf3abd31b68ae644b798cec1c85 100644 (file)
 ./api/AmqpVersion.cs
 ./api/IBasicConsumer.cs
 ./api/IConnection.cs
-./api/AccessRequestConfig.cs
 ./api/ShutdownInitiator.cs
 ./api/IModel.cs
 ./api/ConnectionFactory.cs
 ./api/IStreamProperties.cs
 ./api/IBasicProperties.cs
 ./api/ShutdownEventArgs.cs
-../../docs/specs/autogenerated-api-0-9.cs
-../../docs/specs/autogenerated-api-0-8.cs
-../../docs/specs/autogenerated-api-qpid-0-8.cs
 ../util/DebugUtil.cs
 ../util/NetworkBinaryReader.cs
 ../util/NetworkBinaryWriter.cs
 ../util/Either.cs
 ../util/SharedQueue.cs
 ../util/XmlUtil.cs
+../../docs/specs/autogenerated-api-0-9.cs
+../../docs/specs/autogenerated-api-0-8.cs
+../../docs/specs/autogenerated-api-qpid-0-8.cs
index d64ddb5cf70d8ace757d480fa9e42445804d0e60..197bf686af61011cb1532c1a4c08ddaecde1a722 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 0b3d56beda47ccce2bc61cd2359f869e5fa7c2e9..0b930f5aba106a295a1a3e94189a462b860ad801 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index c89e1f9f39a08f3cd50ff883d2e3bee5eba1f29b..77ae1801be105bdd7c2b9f0a304c015dd3cd6f0f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index de2336ce3c8231841802cc32a8e4d89bcac72d5c..00ff7ff69d8509b3468e9a297b0597e9bfb0746b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 701cb4a502a1c35d427980021eb625f7b2ed9a40..1500f8f7c37b0736e6e387978322887a7f6a8fd0 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -77,7 +83,6 @@ namespace RabbitMQ.Client
     ///     IConnection conn = factory.CreateConnection(protocol, hostName, portNumber);
     ///     //
     ///     IModel ch = conn.CreateModel();
-    ///     ushort ticket = ch.AccessRequest("/data");
     ///     //
     ///     // ... use ch's IModel methods ...
     ///     //
index be969b4d39566ddef907164fa69b6b18bd2020c8..ab7cff95024350b1f7a3ad93b28d3fbfe9ba7463 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -83,7 +89,6 @@ namespace RabbitMQ.Client
         private ushort m_requestedChannelMax = DefaultChannelMax;
         private uint m_requestedFrameMax = DefaultFrameMax;
         private ushort m_requestedHeartbeat = DefaultHeartbeat;
-        private AccessRequestConfig m_accessRequestConfig = AccessRequestConfig.UseDefault;
 
         ///<summary>Construct a fresh instance, with all fields set to
         ///their respective defaults.</summary>
@@ -131,15 +136,6 @@ namespace RabbitMQ.Client
             set { m_requestedHeartbeat = value; }
         }
 
-        /// <summary>Used to control whether Access.Request methods
-        /// are sent to the peer or not, in conjunction with the
-        /// protocol default.</summary>
-        public AccessRequestConfig AccessRequestConfig
-        {
-            get { return m_accessRequestConfig; }
-            set { m_accessRequestConfig = value; }
-        }
-
         ///<summary>Implement ICloneable.Clone by delegating to our type-safe variant.</summary>
         object ICloneable.Clone()
         {
index a2ed68733f9add96261d43d26587e27344f0884d..74ab8ca8a94dfb8be0c3d11e422c0bb59d7f0087 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 756225b22dd09b30a6b6430c9d4448f2d1786838..4422beaf772ff508290c8c31ec4cc4986d04230a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index c85afed0c15bc23d44b65be3c8a4f2abeddd010b..2be582a6e11796a6d02fd2df5c312cdc22fa4264 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index cbd6f5601ccd4bffc4c66c53b6d59c4d3d6ab361..1784c0f02ed0f5efb35d1f96b65ff5cb52f60563 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 482f0ca6857569adf4b3a0af93073e4761a84179..981f996aadf1f2c405b40c32ce5b8f6b7c4c1e9c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -169,6 +175,20 @@ namespace RabbitMQ.Client
         ///</remarks>
         void Close();
         
+        ///<summary>Close this connection and all its channels.</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Close(), with the only
+        ///difference that the connection is closed with the given connection
+        ///close code and message. 
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the connection
+        ///</para>
+        ///</remarks>
+        void Close(ushort reasonCode, string reasonText);
+        
         ///<summary>Close this connection and all its channels
         ///and wait with a timeout for all the in-progress close operations
         ///to complete.
@@ -189,6 +209,23 @@ namespace RabbitMQ.Client
         ///</remarks>
         void Close(int timeout);
         
+        ///<summary>Close this connection and all its channels
+        ///and wait with a timeout for all the in-progress close operations
+        ///to complete.
+        ///</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Close(int timeout), with the only
+        ///difference that the connection is closed with the given connection
+        ///close code and message.
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the connection
+        ///</para>
+        ///</remarks>
+        void Close(ushort reasonCode, string reasonText, int timeout);
+        
         ///<summary>Abort this connection and all its channels.</summary>
         ///<remarks>
         ///Note that all active channels, sessions, and models will be
@@ -200,10 +237,24 @@ namespace RabbitMQ.Client
         ///</remarks>
         void Abort();
         
+        ///<summary>Abort this connection and all its channels.</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Abort(), with the only
+        ///difference that the connection is closed with the given connection
+        ///close code and message.
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the connection
+        ///</para>
+        ///</remarks>
+        void Abort(ushort reasonCode, string reasonText);
+        
         ///<summary>
         ///Abort this connection and all its channels and wait with a
         ///timeout for all the in-progress close operations to complete.
-        ///.</summary>
+        ///</summary>
         ///<remarks>
         ///This method, behaves in a similar way as method Abort() with the
         ///only difference that it explictly specifies the timeout given
@@ -217,6 +268,23 @@ namespace RabbitMQ.Client
         ///</remarks>
         void Abort(int timeout);
         
+        ///<summary>
+        ///Abort this connection and all its channels and wait with a
+        ///timeout for all the in-progress close operations to complete.
+        ///</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Abort(timeout), with the only
+        ///difference that the connection is closed with the given connection
+        ///close code and message.
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the connection
+        ///</para>
+        ///</remarks>
+        void Abort(ushort reasonCode, string reasonText, int timeout);
+        
         ///<summary>Returns the list of ShutdownReportEntry objects that
         ///contain information about any errors reported while closing the
         ///connection in the order they appeared</summary>
index 15b95ca09dd51639ef3b5df1e86e5a05c6ee6ad5..d301e456e43a258a105cbd3806819838e47c27ca 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index e2292d05ce78078c04f11a0a3c8c0d443de5942f..ea7132b6b2f78a7dc869a3e6a46159d41cdd1640 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index f48dc681f14e6166d912431180bf4e620c4174e6..30d347106cb439330d569df53883099979165e04 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 33ed06f3122ae9a6be08b1ed0deff8e9f15ee010..32474899f64cc93a42530c919c2617e08bfa1211 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -118,34 +124,6 @@ namespace RabbitMQ.Client
         [return: AmqpFieldMapping(null, "active")]
         void ChannelFlow(bool active);
 
-        ///<summary>(Spec method) Convenience method, asking for
-        ///non-exclusive access to all capabilities within a
-        ///realm.</summary>
-        ///<remarks>
-        ///If Access.Request is disabled, either through the IProtocol
-        ///default or through the AccessRequestConfig property of
-        ///ConnectionParameters, no request is sent to the peer and a
-        ///dummy ticket number is returned.
-        ///</remarks>
-        [AmqpMethodDoNotImplement(null)]
-        ushort AccessRequest(string realm);
-
-        ///<summary>(Spec method) Retrieve an access ticket
-        ///("capability") for a realm.</summary>
-        ///<remarks>
-        ///If Access.Request is disabled, either through the IProtocol
-        ///default or through the AccessRequestConfig property of
-        ///ConnectionParameters, no request is sent to the peer and a
-        ///dummy ticket number is returned.
-        ///</remarks>
-        [AmqpMethodDoNotImplement(null)]
-        ushort AccessRequest(string realm,
-                             bool exclusive,
-                             bool passive,
-                             bool active,
-                             bool write,
-                             bool read);
-
         ///<summary>(Spec method) Declare an exchange.</summary>
         ///<remarks>
         ///The exchange is declared non-passive, non-autodelete, and
@@ -153,7 +131,7 @@ namespace RabbitMQ.Client
         ///exercised.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        void ExchangeDeclare(ushort ticket, string exchange, string type, bool durable);
+        void ExchangeDeclare(string exchange, string type, bool durable);
 
         ///<summary>(Spec method) Declare an exchange.</summary>
         ///<remarks>
@@ -162,11 +140,10 @@ namespace RabbitMQ.Client
         ///exercised.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        void ExchangeDeclare(ushort ticket, string exchange, string type);
+        void ExchangeDeclare(string exchange, string type);
 
         ///<summary>(Spec method) Declare an exchange.</summary>
-        void ExchangeDeclare(ushort ticket,
-                             string exchange,
+        void ExchangeDeclare(string exchange,
                              string type,
                              bool passive,
                              bool durable,
@@ -177,8 +154,7 @@ namespace RabbitMQ.Client
                              IDictionary arguments);
 
         ///<summary>(Spec method) Delete an exchange.</summary>
-        void ExchangeDelete(ushort ticket,
-                            string exchange,
+        void ExchangeDelete(string exchange,
                             bool ifUnused,
                             [AmqpNowaitArgument(null)]
                             bool nowait);
@@ -191,7 +167,7 @@ namespace RabbitMQ.Client
         ///name is the return value of this method.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string QueueDeclare(ushort ticket);
+        string QueueDeclare();
 
         ///<summary>(Spec method) Declare a queue.</summary>
         ///<remarks>
@@ -199,8 +175,7 @@ namespace RabbitMQ.Client
         ///non-exclusive, and non-autodelete, with no arguments.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string QueueDeclare(ushort ticket,
-                            string queue);
+        string QueueDeclare(string queue);
 
         ///<summary>(Spec method) Declare a queue.</summary>
         ///<remarks>
@@ -208,8 +183,7 @@ namespace RabbitMQ.Client
         ///non-autodelete, with no arguments.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string QueueDeclare(ushort ticket,
-                            string queue,
+        string QueueDeclare(string queue,
                             bool durable);
 
         ///<summary>(Spec method) Declare a queue.</summary>
@@ -217,8 +191,7 @@ namespace RabbitMQ.Client
         ///Returns the name of the queue that was declared.
         ///</remarks>
         [return: AmqpFieldMapping(null, "queue")]
-        string QueueDeclare(ushort ticket,
-                            string queue,
+        string QueueDeclare(string queue,
                             bool passive,
                             bool durable,
                             bool exclusive,
@@ -228,8 +201,7 @@ namespace RabbitMQ.Client
                             IDictionary arguments);
 
         ///<summary>(Spec method) Bind a queue to an exchange.</summary>
-        void QueueBind(ushort ticket,
-                       string queue,
+        void QueueBind(string queue,
                        string exchange,
                        string routingKey,
                        [AmqpNowaitArgument(null)]
@@ -239,12 +211,12 @@ namespace RabbitMQ.Client
         ///<summary>(Spec method) Unbind a queue from an exchange.</summary>
         ///<remarks>
         ///Note: This operation is only supported when communicating
-        ///using AMQP protocol version 0-9.
+        ///using AMQP protocol version 0-9, or when communicating with
+        ///a 0-8 broker that has been enhanced with the unofficial
+        ///addition of a queue.unbind method.
         ///</remarks>
-        [AmqpUnsupported("RabbitMQ.Client.Framing.v0_8")]
         [AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid")]
-        void QueueUnbind(ushort ticket,
-                         string queue,
+        void QueueUnbind(string queue,
                          string exchange,
                          string routingKey,
                          IDictionary arguments);
@@ -255,8 +227,7 @@ namespace RabbitMQ.Client
         ///specified, returns <code>uint.MaxValue</code>.
         ///</remarks>
         [return: AmqpFieldMapping(null, "messageCount")]
-        uint QueuePurge(ushort ticket,
-                        string queue,
+        uint QueuePurge(string queue,
                         [AmqpNowaitArgument(null, "0xFFFFFFFF")]
                         bool nowait);
 
@@ -267,8 +238,7 @@ namespace RabbitMQ.Client
         ///<code>uint.MaxValue</code>.
         ///</remarks>
         [return: AmqpFieldMapping(null, "messageCount")]
-        uint QueueDelete(ushort ticket,
-                         string queue,
+        uint QueueDelete(string queue,
                          bool ifUnused,
                          bool ifEmpty,
                          [AmqpNowaitArgument(null, "0xFFFFFFFF")]
@@ -281,8 +251,7 @@ namespace RabbitMQ.Client
         ///noLocal=false and exclusive=false.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string BasicConsume(ushort ticket,
-                            string queue,
+        string BasicConsume(string queue,
                             IDictionary filter,
                             IBasicConsumer consumer);
 
@@ -293,8 +262,7 @@ namespace RabbitMQ.Client
         ///noLocal=false and exclusive=false.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string BasicConsume(ushort ticket,
-                            string queue,
+        string BasicConsume(string queue,
                             bool noAck,
                             IDictionary filter,
                             IBasicConsumer consumer);
@@ -305,8 +273,7 @@ namespace RabbitMQ.Client
         ///noLocal=false and exclusive=false.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        string BasicConsume(ushort ticket,
-                            string queue,
+        string BasicConsume(string queue,
                             bool noAck,
                             string consumerTag,
                             IDictionary filter,
@@ -314,8 +281,7 @@ namespace RabbitMQ.Client
 
         ///<summary>Start a Basic content-class consumer.</summary>
         [AmqpMethodDoNotImplement(null)]
-        string BasicConsume(ushort ticket,
-                            string queue,
+        string BasicConsume(string queue,
                             bool noAck,
                             string consumerTag,
                             bool noLocal,
@@ -337,8 +303,7 @@ namespace RabbitMQ.Client
         ///The publication occurs with mandatory=false and immediate=false.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        void BasicPublish(ushort ticket,
-                          PublicationAddress addr,
+        void BasicPublish(PublicationAddress addr,
                           IBasicProperties basicProperties,
                           byte[] body);
 
@@ -347,8 +312,7 @@ namespace RabbitMQ.Client
         ///The publication occurs with mandatory=false and immediate=false.
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
-        void BasicPublish(ushort ticket,
-                          string exchange,
+        void BasicPublish(string exchange,
                           string routingKey,
                           IBasicProperties basicProperties,
                           byte[] body);
@@ -356,8 +320,7 @@ namespace RabbitMQ.Client
         ///<summary>(Spec method) Publish a message using the Basic
         ///content-class.</summary>
         [AmqpMethodDoNotImplement(null)]
-        void BasicPublish(ushort ticket,
-                          string exchange,
+        void BasicPublish(string exchange,
                           string routingKey,
                           bool mandatory,
                           bool immediate,
@@ -380,8 +343,7 @@ namespace RabbitMQ.Client
         ///no messages are currently available. See also
         ///IModel.BasicAck.</summary>
         [AmqpMethodDoNotImplement(null)]
-        BasicGetResult BasicGet(ushort ticket,
-                                string queue,
+        BasicGetResult BasicGet(string queue,
                                 bool noAck);
 
         ///<summary>(Spec method) Enable TX mode for this session.</summary>
@@ -403,13 +365,55 @@ namespace RabbitMQ.Client
 
         ///<summary>Close this session.</summary>
         ///<remarks>
-        /// If the session is already closed (or closing), then this
-        /// method does nothing but wait for the in-progress close
-        /// operation to complete. This method will not return to the
-        /// caller until the shutdown is complete.
+        ///If the session is already closed (or closing), then this
+        ///method does nothing but wait for the in-progress close
+        ///operation to complete. This method will not return to the
+        ///caller until the shutdown is complete.
+        ///</remarks>
+        [AmqpMethodDoNotImplement(null)]
+        void Close();
+        
+        ///<summary>Close this session.</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Close(), with the only
+        ///difference that the model is closed with the given model
+        ///close code and message.
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the model
+        ///</para>
         ///</remarks>
         [AmqpMethodDoNotImplement(null)]
         void Close(ushort replyCode, string replyText);
+        
+        ///<summary>Abort this session.</summary>
+        ///<remarks>
+        ///If the session is already closed (or closing), then this
+        ///method does nothing but wait for the in-progress close
+        ///operation to complete. This method will not return to the
+        ///caller until the shutdown is complete.
+        ///In comparison to normal Close() method, Abort() will not throw
+        ///AlreadyClosedException or IOException during closing model.
+        ///</remarks>
+        [AmqpMethodDoNotImplement(null)]
+        void Abort();
+        
+        ///<summary>Abort this session.</summary>
+        ///<remarks>
+        ///The method behaves in the same way as Abort(), with the only
+        ///difference that the model is closed with the given model
+        ///close code and message.
+        ///<para>
+        ///The close code (See under "Reply Codes" in the AMQP specification)
+        ///</para>
+        ///<para>
+        ///A message indicating the reason for closing the model
+        ///</para>
+        ///</remarks>
+        [AmqpMethodDoNotImplement(null)]
+        void Abort(ushort replyCode, string replyText);
     }
 
     ///<summary>Represents Basic.GetOk responses from the server.</summary>
@@ -490,25 +494,11 @@ namespace RabbitMQ.Client.Impl
     ///<see cref="RabbitMQ.Client.Framing.Impl.v0_9.Model"/>
     public interface IFullModel : RabbitMQ.Client.IModel
     {
-        ///<summary>Used to send an Access.Request method. Called by
-        ///the public API after checking whether our peer's
-        ///implementation can actually handle access
-        ///requests.</summary>
-        [AmqpMethodMapping(null, "access", "request")]
-        [return: AmqpFieldMapping(null, "ticket")]
-        ushort _Private_AccessRequest(string realm,
-                      bool exclusive,
-                      bool passive,
-                      bool active,
-                      bool write,
-                      bool read);
-
         ///<summary>Used to send a Basic.Publish method. Called by the
         ///public publish method after potential null-reference issues
         ///have been rectified.</summary>
         [AmqpMethodMapping(null, "basic", "publish")]
-        void _Private_BasicPublish(ushort ticket,
-                                   string exchange,
+        void _Private_BasicPublish(string exchange,
                                    string routingKey,
                                    bool mandatory,
                                    bool immediate,
@@ -522,8 +512,7 @@ namespace RabbitMQ.Client.Impl
         ///datastructures.</summary>
         [AmqpForceOneWay]
         [AmqpMethodMapping(null, "basic", "consume")]
-        void _Private_BasicConsume(ushort ticket,
-                                   string queue,
+        void _Private_BasicConsume(string queue,
                                    string consumerTag,
                                    bool noLocal,
                                    bool noAck,
@@ -573,8 +562,7 @@ namespace RabbitMQ.Client.Impl
         ///required.</summary>
         [AmqpForceOneWay]
         [AmqpMethodMapping(null, "basic", "get")]
-        void _Private_BasicGet(ushort ticket,
-                               string queue,
+        void _Private_BasicGet(string queue,
                                bool noAck);
 
         ///<summary>Handle incoming Basic.GetOk methods. Routes the
@@ -620,6 +608,15 @@ namespace RabbitMQ.Client.Impl
                                IBasicProperties basicProperties,
                                [AmqpContentBodyMapping]
                                byte[] body);
+                               
+        ///<summary>Used to send a Channel.FlowOk. Confirms that
+        ///Channel.Flow from the broker was processed.</summary>
+        [AmqpMethodMapping(null, "channel", "flow-ok")]
+        void _Private_ChannelFlowOk();
+        
+        ///<summary>Handle incoming Channel.Flow methods. Either
+        ///stops or resumes sending the methods that have content.</summary>
+        void HandleChannelFlow(bool active);
 
         ///<summary>Handle an incoming Channel.Close. Shuts down the
         ///session and model.</summary>
index ca47dc17205e4d02728bc1f05b610b1741fc8c85..c1f41a8dfc5794c5d77ec8e08ee74ef72832c65f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -67,12 +73,6 @@ namespace RabbitMQ.Client
         ///<summary>Retrieve the protocol's default TCP port</summary>
         int DefaultPort { get; }
 
-        ///<summary>Returns false if this protocol variant defaults to
-        ///permitting Access.Requests to be sent to the peer, or true
-        ///if Access.Requests should be suppressed by
-        ///default.</summary>
-        bool DefaultSuppressAccessRequest { get; }
-
         ///<summary>Construct a frame handler for a given endpoint.</summary>
         IFrameHandler CreateFrameHandler(AmqpTcpEndpoint endpoint);
         ///<summary>Construct a connection from a given set of
index e400ec931a5e09785d6e857ccb22e7bf76cf8f2f..fd783319e392679fdca9d26b6a2ae9bef7141ad9 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index a0e1c11841f5fe8191ea666a80a3fe9a0bdf6a65..69c5f3d741c715564fa6ba8e146c179da7d2210f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 3f91b39ef64781edf98a6420b858c1a3873677f5..f4f3d900418b9a8c5f4e931e3389d3bd4d45b485 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 8cc2f3832efd6b03eb2fcb3102426e6bbdad592f..a5c0347998616ec13c73538fa0128f4249da6245 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -80,7 +86,7 @@ namespace RabbitMQ.Client
     ///<example><code>
     ///        IModel channel = ...;
     ///        QueueingBasicConsumer consumer = new QueueingBasicConsumer(channel);
-    ///        channel.BasicConsume(ticket, queueName, null, consumer);
+    ///        channel.BasicConsume(queueName, null, consumer);
     ///        
     ///        // At this point, messages will be being asynchronously delivered,
     ///        // and will be queueing up in consumer.Queue.
index 7a23d2bda45e7353334de9bf940f6d236c03ff35..f9aec2029c76a7800997771a8c380b18fb0a8d37 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index cdcc14fef1765769a4c38c9291214ae6acf142ab..f6c904573203cb5a9ad09b3e5b7585dacb2e7a7c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index c61836a9ab67405ebf4b633cfae1e96001c9c1d5..7fa9ba8c05fe4b84ca0578c0dd5c87f5fd3af4e2 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index b02df62825c65912e26b93867b425d061dda4a3d..72574172d5deaac717904288f94ef1139dbab192 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index a7830a9ab94b5d924c8ea49e57ab0f4e909aa75b..0874f28f506a0fb7a1c0fc57dbc7910971a4cc49 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index e01b3cfd084e7077f5f5969d7942b19d63696d14..7cd757483ec2fe0967e8879d734792924308414a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index a8d920f8de1cc1cfdc7a7e7f378dfe95d02ca223..2ce790fe9fd611f87533f8cd5ea0db7c7795756b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 750d73980da3d045b28310954ce7dfc504916617..7e051d0fb7059b14731e6b84afc4dd6dee26f19e 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 39252c669722b496c3db81c388629bfd2a560f01..fcd62ffb531ad98f8ea6984ccf7e81a78c0413bd 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 51f9bcdcab1445c847768318f71a55e1fe707ac5..74816f8816d058b1901fb29f240b5f4b60b76fd8 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index b4e3028a587e828891d535d22a356e169eb1bc60..42b7a9b91eef30f840eb24d3e28630a306266bf9 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index fccdca77c23f289554fd6dac6f109f8f8b4ca534..1dc14ccab7e8475e6c08e012b55e696f58953423 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 3311e1495a4f653be7278f17a226f6c1b414674a..93a362a0c5434ba7c4f88e522f41dd7d9795866a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index b41967d754828dba184952fb66278e78694ee269..cda25b7c3daca9600c0447ced7e60814f0594ccf 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 0998f35c9dcec916d48472947d258a9bc638c033..509491d4cbb5450ec31b174c442a3ffce4003270 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 473149c4eb6067468da5d7495b24b12e5929ca2b..1c71ee983cf2f45f2498af11c923958319f5ba8f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9e44d4d20e974d9ae037e1da5e82161fccc9f14b..e2243beff757416b07229d5784ee0cd33cbaca20 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 335b6c2ba8fdc6c93cee9cb842b1091f0833ce8c..68cfcaa8f822556b43f7b55840a79807abc59d34 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index ac42cff71d6bf581b22f521c2f64dbc585d770d6..0f04d72acef9ee8b95820d0e20ef351528c9217d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 677c17f048c0bae1943d61889dce6525c0ffe602..71df96139d99fa804b054d2fd0109ce2ec53a604 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 7f04db4d06ac3324cd4fd84f1f3213ba0ab31686..7fd985d23a1c85610206667e21f042b2d029f959 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 3d3c3c56b874443f1a7b3c9f5f52692bc70dbf57..ed16e2af2ad9a8e2533a889aca6834f6120a0694 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index a2b11ce5b7f291a3aa8b79b64fec5f358637c3f0..824378f65b05f9ebfa5ff8ad81768f4aa2a55f93 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index dbf6e889893c0a5041dad742f3dc23f7bed93460..327d82397a77e6f980f8b14c9f3e72781763c497 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 15dd0115208617d398036ba5504f23543f3b45b6..1af5bfcc4a9961ff6899d68fa2cbf6a61044e5cc 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 96e761adabd281fc317e5e2e0dffa0ce71d24db1..531cfc124594f68717823b97b7ac97f38ad11ea1 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index fb20794adf8dacdb6b3663ea9760168adea19d05..a9681e9dae522ef237da4026f880d8aa922670d6 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index fc152827be6e457c2eac1fdac67c0cf5161c36e5..f3b1b614198f1e9d1fd646085a7dc52d6e90a7a5 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index d5a681e1b12cf3ca227a097482d71ba30252133c..b12acc4c9e29903a5a692678b20ea33dbe6a068a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 61213a16a056fb2424973a8831d594c485ad98a3..e20bf90271c13f21efc9217ae01755647ec13e81 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index b053aa8a753f172d0349b49eb48e0d5453b9c2fa..995fbcd86658189ac3802d97b87e1716c86cc89f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 6ab35db1e09a874c2a87cff8b7876f452eb4f362..c232e8ba235e11861057bb7c8285a47b2431f19b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 93379107e81a97dde611eecb5fdb4f1cfa868ae6..d4bbce34a25b3a83cfc5341f14826f32ffda537c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index ce08cd84ff22f7833bdf4ad05b77fc4c655601d0..8ada4f5a682b1cb9088c0af88cdd06a967c2a8d5 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 82c32455a4944dd57d2d48f0a92a49e54d92d31d..f37c8979975d287678f1e0837a5abac3c5f973eb 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index bc7d59f74c62e748b58e70a85f5938336e47f99d..995506f2fd7ba6fd9425ec423d47cbf9c70188f3 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 47eada9827842b8e170997ee8ebf4e090899b36e..4b939a9292f21a8985b48b26e0dad79dac03de68 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 378fe74f6b08818bb22e81ba809b50f0aab4a655..995a135d65b18b87c215ab7819eb8178d504b34f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index ed7568828862a9a89ecd0b1e0478eb09ea344355..a070f1c4c95a33a20a4e6fdcbc8e39e6ef31110e 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 57fe4d87dc63aa2dcbef222ea47785a29dc9bf75..6cf85759a7a28ac878cf0860010b699f5d651f00 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 44edc1158d6a8f8becabc2de9ff67aeaaaffa3d9..7e60b8d6a3c5467ee1934c8254e1bf09a55c80c7 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 6bc3fa6e95d567f0a40475e83695c06a9bf0b41e..9799b39bec6fd71fd3300bd517e1e1ddcf4d6583 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9ced1a374edfe5cfca1dfd4cfa78bfc8053ce3c9..9d5df4af150c7db67f2679bb5ce345943176a476 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index b80531379eb6971c5aff9dc8dc818690c4c043a4..78db98bd3649e382dd954dcee42801d51f6f175f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index f75ec4375a0545b766e147ac5808a7ef94208967..75c44708bc6e20b58bbf43a5b70d7a999c638331 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 241e67aa56c408a7f36ad6c3fdea670d1c1f9303..9d2c14976b53cacee340b656161d3688beb718e4 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -59,8 +65,6 @@ namespace RabbitMQ.Client.Impl {
         public abstract string ApiName { get; }
         public abstract int DefaultPort { get; }
 
-       public abstract bool DefaultSuppressAccessRequest { get; }
-
         public abstract IFrameHandler CreateFrameHandler(AmqpTcpEndpoint endpoint);
         public abstract IConnection CreateConnection(ConnectionParameters parameters,
                                                      bool insist,
@@ -85,6 +89,10 @@ namespace RabbitMQ.Client.Impl {
                                                    out Command request,
                                                    out int replyClassId,
                                                    out int replyMethodId);
+                                                   
+        ///<summary>Used in the quiescing session to determine if the command
+        ///is allowed to be sent.</summary>
+        public abstract bool CanSendWhileClosed(Command cmd); 
 
         public AmqpVersion Version {
             get {
index f945fab2d06c56a9603d696b33ddf562c13f97a3..a1a0f6567f66591f5c4db78e21a79d786405d2a9 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 0d708de90a1d322e9a0985de432762958d68282f..59d8a6a146d93e974302521530020b5b9f698d17 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index aa8af31180dde1238dd197793e03e0999be1a58b..a6a9e378e1c96c03e2d13ff684111569bc8d9020 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9befdfa34d7a43393650056ee7c8d1c2b1f5a253..dd36e7e9384be28650349cce2906127b2e39cd79 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 3935bc2c57f34fba53f6705b5202ba74dc89f86c..d0e6fa717c75d5ef151ef13cabee036cd5b98cde 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9c03dcdfb64707e5dccba3b87f76e9bdd39088ed..fddc530efbf4a3861dca886829af8b6368f6c204 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -122,7 +128,7 @@ namespace RabbitMQ.Client.Impl
 
             m_sessionManager = new SessionManager(this);
             m_session0 = new MainSession(this);
-            m_session0.Handler = NotifyReceivedClose;
+            m_session0.Handler = new MainSession.SessionCloseDelegate(NotifyReceivedCloseOk);
             m_model0 = (ModelBase)Protocol.CreateModel(m_session0);
 
             StartMainLoop();
@@ -334,7 +340,16 @@ namespace RabbitMQ.Client.Impl
 
         void IDisposable.Dispose()
         {
-            Close();
+            Abort();
+            if (ShutdownReport.Count > 0)
+            {
+               foreach (ShutdownReportEntry entry in ShutdownReport)
+               {
+                   if (entry.Exception != null)
+                       throw entry.Exception;
+               }
+               throw new OperationInterruptedException(null);
+            }
         }
 
         ///<summary>API-side invocation of connection close.</summary>
@@ -343,28 +358,40 @@ namespace RabbitMQ.Client.Impl
             Close(200, "Goodbye", Timeout.Infinite);
         }
         
+        ///<summary>API-side invocation of connection close.</summary>
+        public void Close(ushort reasonCode, string reasonText)
+        {
+            Close(reasonCode, reasonText, Timeout.Infinite);
+        }
+        
         ///<summary>API-side invocation of connection close with timeout.</summary>
         public void Close(int timeout)
         {
             Close(200, "Goodbye", timeout);
         }
-
-        public void Close(ShutdownEventArgs reason)
-        {
-            Close(reason, false, Timeout.Infinite);
-        }
         
+        ///<summary>API-side invocation of connection close with timeout.</summary>
         public void Close(ushort reasonCode, string reasonText, int timeout)
         {
             Close(new ShutdownEventArgs(ShutdownInitiator.Application, reasonCode, reasonText), false, timeout);
         }
-        
+
+        public void Close(ShutdownEventArgs reason)
+        {
+            Close(reason, false, Timeout.Infinite);
+        }        
         
         ///<summary>API-side invocation of connection abort.</summary>
         public void Abort()
         {
             Abort(Timeout.Infinite);
         }
+
+        ///<summary>API-side invocation of connection abort.</summary>
+        public void Abort(ushort reasonCode, string reasonText)
+        {
+            Abort(reasonCode, reasonText, Timeout.Infinite);
+        }
         
         ///<summary>API-side invocation of connection abort with timeout.</summary>
         public void Abort(int timeout)
@@ -372,6 +399,7 @@ namespace RabbitMQ.Client.Impl
             Abort(200, "Connection close forced", timeout);
         }
         
+        ///<summary>API-side invocation of connection abort with timeout.</summary>
         public void Abort(ushort reasonCode, string reasonText, int timeout)
         {
             Abort(reasonCode, reasonText, ShutdownInitiator.Application, timeout);
@@ -539,13 +567,12 @@ namespace RabbitMQ.Client.Impl
             FinishClose();
         }
         
-        public void HandleHeartbeatFrame()
+        public void NotifyHeartbeatThread()
         {
             if (m_heartbeat == 0) {
                 // Heartbeating not enabled for this connection.
                 return;
             }
-            
             m_heartbeatRead.Set();
         }
 
@@ -601,11 +628,11 @@ namespace RabbitMQ.Client.Impl
         {
             Frame frame = m_frameHandler.ReadFrame();
 
+            NotifyHeartbeatThread();
             // We have received an actual frame.
             if (frame.Type == CommonFraming.Constants.FrameHeartbeat) {
                 // Ignore it: we've already just reset the heartbeat
                 // counter.
-                HandleHeartbeatFrame();
                 return;
             }
 
@@ -650,7 +677,7 @@ namespace RabbitMQ.Client.Impl
             closed = true;
             m_heartbeatRead.Set();
             m_heartbeatWrite.Set();
-        
+
             m_frameHandler.Close();                
             m_model0.SetCloseReason(m_closeReason);
             m_model0.FinishClose();
@@ -684,10 +711,10 @@ namespace RabbitMQ.Client.Impl
         ///</remarks>
         public void ClosingLoop()
         {
-            m_frameHandler.Timeout = ConnectionCloseTimeout;
-            DateTime startTimeout = DateTime.Now;
             try
             {
+                m_frameHandler.Timeout = ConnectionCloseTimeout;
+                DateTime startTimeout = DateTime.Now;
                 // Wait for response/socket closure or timeout
                 while (!closed)
                 {
@@ -699,6 +726,11 @@ namespace RabbitMQ.Client.Impl
                     MainLoopIteration();
                 }
             }
+            catch (ObjectDisposedException ode)
+            {
+                if (!closed)
+                    LogCloseError("Connection didn't close cleanly", ode);
+            }
             catch (EndOfStreamException eose)
             {
                 if (m_model0.CloseReason == null)
@@ -716,10 +748,10 @@ namespace RabbitMQ.Client.Impl
             }
         }
         
-        public void NotifyReceivedClose()
+        public void NotifyReceivedCloseOk()
         {
+            TerminateMainloop();
             closed = true;
-            m_frameHandler.Close();
         }
         
         ///<summary>
index a0aa9047655bd353554ce3de750c83af7e231f0d..a8ead25b1ee360788170e7480bbccd8cda8f96e3 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 6a8a073264080de38c4c4e9ff9c926340e80c4e1..0ddbffb4ad199aaba243c1d67e7ac841d2ca298c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index e1f0226a4e6d8f6601218b2a7496948d61feeffe..d887a46148ac222cdd7b046ead4f53e7d04f1078 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 913d72efb781d758e43808272c76ebc324481a8a..003fdb01735e12d0c45e056f2b7f998aaa703c34 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 151a10f785f41d398f2221a3f0d9b58a13b604fa..af879d66a5ad4c58f143a420b80b64858e60b671 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 113818fe824f6c06db83ff712dd501a80fc9d189..9168f057530d6d85840ad9f1436ae50e74bd69a4 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index d57a8f92a8488b071ba48856be83563ed09d83f2..20a3c9b959283613e2fe1ac845c7cc87048dcf20 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 6f4bd7abc426e604481377466503ebe8e953db84..2da37714e69e9dcb14f645a50f207ce5b2b8bf80 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index f83611c2940aea60c90ae5c600e8ebb342b88d06..b535d7787c1461096f5496eac234b3ca9023221d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 809a04b20f1e5edcf4a2291d27a169c89df68ea5..0a393107c5ab87f60626d26ad56f88d3c1bde18a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -63,11 +69,13 @@ namespace RabbitMQ.Client.Impl {
         event SessionShutdownEventHandler SessionShutdown;
 
         int ChannelNumber { get; }
-       IConnection Connection { get; }
-       ShutdownEventArgs CloseReason { get; }
+        IConnection Connection { get; }
+        ShutdownEventArgs CloseReason { get; }
         bool IsOpen { get; }
         void HandleFrame(Frame frame);
         void Transmit(Command cmd);
         void Close(ShutdownEventArgs reason);
+        void Close(ShutdownEventArgs reason, bool notify);
+        void Notify();
     }
 }
index 6a9f636125f0d8fdc8535abc81f0fbbab2d4d3ba..ef9b1a086636e33c6b5c9b3970cd8b74634d47bf 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -110,7 +116,7 @@ namespace RabbitMQ.Client.Impl
         public SessionCloseDelegate Handler
         {
             get { return handler; }
-            set { handler = new SessionCloseDelegate(value); }
+            set { handler = value; }
         }
 
         public override void HandleFrame(Frame frame)
index efcebeb70f27eec733ea0071f6121f383a01ebe7..98ee60583784cd13a8a603c539a61500e5213b8b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 69f95ace6c8c54be874fd800037788a41ebd5aaa..1be72847c3a60e099db11cb6bbd90af5b2581aeb 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 16fc02e810f034b1ad560d6bc45b4d3ab33dcd81..e36a38281c6e3ccd8b64a8bb8486c9337327addc 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 6dddfc20ca5ebc889abd00b45d4e219858b66cc9..fac81aeb85e2457e86b0b93bc1149d0b4eb937e6 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 58e4313ff9d9618ec1cddd4649ffba62a7b26810..38770f4935846db6318f948777324f64f2f3d94e 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -76,6 +82,8 @@ namespace RabbitMQ.Client.Impl
         private readonly object m_eventLock = new object();
         private BasicReturnEventHandler m_basicReturn;
         private CallbackExceptionEventHandler m_callbackException;
+        
+        public ManualResetEvent m_flowControlBlock = new ManualResetEvent(true);
 
         public event ModelShutdownEventHandler ModelShutdown
         {
@@ -225,6 +233,7 @@ namespace RabbitMQ.Client.Impl
                     }
                 }
             }
+            m_flowControlBlock.Set();
         }
 
         public virtual void OnBasicReturn(BasicReturnEventArgs args)
@@ -318,6 +327,9 @@ namespace RabbitMQ.Client.Impl
 
         public void ModelSend(MethodBase method, ContentHeaderBase header, byte[] body)
         {
+            if (method.HasContent) {
+                m_flowControlBlock.WaitOne();
+            }
             m_session.Transmit(new Command(method, header, body));
         }
         
@@ -381,6 +393,17 @@ namespace RabbitMQ.Client.Impl
             e.Body = body;
             OnBasicReturn(e);
         }
+        
+        public abstract void _Private_ChannelFlowOk();
+        
+        public void HandleChannelFlow(bool active)
+        {
+            if (active)
+                m_flowControlBlock.Set();
+            else
+                m_flowControlBlock.Reset();
+            _Private_ChannelFlowOk();
+        }
 
         public void HandleConnectionStart(byte versionMajor,
                                           byte versionMinor,
@@ -444,8 +467,13 @@ namespace RabbitMQ.Client.Impl
                              replyText,
                              classId,
                              methodId));
-            FinishClose();
-            _Private_ChannelCloseOk();
+            
+            m_session.Close(m_closeReason, false);
+            try {
+                _Private_ChannelCloseOk();
+            } finally {
+                m_session.Notify();
+            }
         }
 
         public void FinishClose()
@@ -464,95 +492,17 @@ namespace RabbitMQ.Client.Impl
 
         public abstract void ChannelFlow(bool active);
         
-        public ushort AccessRequest(string realm)
-        {
-            return AccessRequest(realm, false, true, true, true, true);
-        }
-        
-        public static AccessRequestConfig GetEnvironmentAccessRequestConfig()
-        {
-            string setting = Environment.GetEnvironmentVariable("AMQP_ACCESS_REQUEST");
-            if (setting == null)
-            {
-                return AccessRequestConfig.UseDefault;
-            }
-            switch (setting)
-            {
-                case "ENABLE": return AccessRequestConfig.Enable;
-                case "SUPPRESS": return AccessRequestConfig.Suppress;
-                case "USE_DEFAULT": return AccessRequestConfig.UseDefault;
-                default: {
-                    string message = string.Format("Unsupported AMQP_ACCESS_REQUEST setting: {0}",
-                                                   setting);
-                    throw new NotSupportedException(message);
-                }
-            }
-        }
-
-        public static AccessRequestConfig Combine(AccessRequestConfig first,
-                                                  AccessRequestConfig second)
-        {
-            return (first == AccessRequestConfig.UseDefault) ? second : first;
-        }
-
-        public ushort AccessRequest(string realm,
-                        bool exclusive,
-                        bool passive,
-                        bool active,
-                        bool write,
-                        bool read)
-        {
-            bool send;
-            switch (Combine(m_session.Connection.Parameters.AccessRequestConfig,
-                            GetEnvironmentAccessRequestConfig()))
-            {
-                case AccessRequestConfig.Enable:
-                    send = true;
-                    break;
-                case AccessRequestConfig.Suppress:
-                    send = false;
-                    break;
-                case AccessRequestConfig.UseDefault:
-                    send = !m_session.Connection.Protocol.DefaultSuppressAccessRequest;
-                    break;
-                default: {
-                    send = false;
-
-                    string message = string.Format("Illegal value for AccessRequestConfig: {0}",
-                                                   (int) m_session.Connection.Parameters.AccessRequestConfig);
-                    throw new ArgumentException(message);
-                }
-            }
-            if (send)
-            {
-                return _Private_AccessRequest(realm, exclusive, passive, active, write, read);
-            }
-            else
-            {
-                return 0;
-            }
-        }
-
-        // TODO: Consider changing the access modifier or name, _Private => protected (?)
-        public abstract ushort _Private_AccessRequest(string realm,
-                              bool exclusive,
-                              bool passive,
-                              bool active,
-                              bool write,
-                              bool read);
-
-        public void ExchangeDeclare(ushort ticket, string exchange, string type, bool durable)
+        public void ExchangeDeclare(string exchange, string type, bool durable)
         {
-            ExchangeDeclare(ticket, exchange, type, false, durable, false, false, false, null);
+            ExchangeDeclare(exchange, type, false, durable, false, false, false, null);
         }
 
-        public void ExchangeDeclare(ushort ticket, string exchange, string type)
+        public void ExchangeDeclare(string exchange, string type)
         {
-            ExchangeDeclare(ticket, exchange, type, false, false, false, false, false, null);
+            ExchangeDeclare(exchange, type, false, false, false, false, false, null);
         }
 
-        public abstract void ExchangeDeclare(ushort ticket,
-                                             string exchange,
+        public abstract void ExchangeDeclare(string exchange,
                                              string type,
                                              bool passive,
                                              bool durable,
@@ -561,31 +511,28 @@ namespace RabbitMQ.Client.Impl
                                              bool nowait,
                                              IDictionary arguments);
 
-        public abstract void ExchangeDelete(ushort ticket,
-                                            string exchange,
+        public abstract void ExchangeDelete(string exchange,
                                             bool ifUnused,
                                             bool nowait);
 
         //TODO: Mark these as virtual, maybe the model has an optimized way
         //      of dealing with missing parameters.
-
-        public string QueueDeclare(ushort ticket)
+        public string QueueDeclare()
         {
-            return QueueDeclare(ticket, "", false, false, true, true, false, null);
+            return QueueDeclare("", false, false, true, true, false, null);
         }
 
-        public string QueueDeclare(ushort ticket, string queue)
+        public string QueueDeclare(string queue)
         {
-            return QueueDeclare(ticket, queue, false);
+            return QueueDeclare(queue, false);
         }
 
-        public string QueueDeclare(ushort ticket, string queue, bool durable)
+        public string QueueDeclare(string queue, bool durable)
         {
-            return QueueDeclare(ticket, queue, false, durable, false, false, false, null);
+            return QueueDeclare(queue, false, durable, false, false, false, null);
         }
 
-        public abstract string QueueDeclare(ushort ticket,
-                                            string queue,
+        public abstract string QueueDeclare(string queue,
                                             bool passive,
                                             bool durable,
                                             bool exclusive,
@@ -593,54 +540,47 @@ namespace RabbitMQ.Client.Impl
                                             bool nowait,
                                             IDictionary arguments);
 
-        public abstract void QueueBind(ushort ticket,
-                                       string queue,
+        public abstract void QueueBind(string queue,
                                        string exchange,
                                        string routingKey,
                                        bool nowait,
                                        IDictionary arguments);
 
-        public abstract void QueueUnbind(ushort ticket,
-                                         string queue,
+        public abstract void QueueUnbind(string queue,
                                          string exchange,
                                          string routingKey,
                                          IDictionary arguments);
 
-        public abstract uint QueuePurge(ushort ticket,
-                                        string queue,
+        public abstract uint QueuePurge(string queue,
                                         bool nowait);
 
-        public abstract uint QueueDelete(ushort ticket,
-                                         string queue,
+        public abstract uint QueueDelete(string queue,
                                          bool ifUnused,
                                          bool ifEmpty,
                                          bool nowait);
 
-        public string BasicConsume(ushort ticket,
-                                   string queue,
+        public string BasicConsume(string queue,
                                    IDictionary filter,
                                    IBasicConsumer consumer)
         {
-            return BasicConsume(ticket, queue, false, filter, consumer);
+            return BasicConsume(queue, false, filter, consumer);
         }
 
-        public string BasicConsume(ushort ticket,
-                                   string queue,
+        public string BasicConsume(string queue,
                                    bool noAck,
                                    IDictionary filter,
                                    IBasicConsumer consumer)
         {
-            return BasicConsume(ticket, queue, noAck, "", filter, consumer);
+            return BasicConsume(queue, noAck, "", filter, consumer);
         }
 
-        public string BasicConsume(ushort ticket,
-                                   string queue,
+        public string BasicConsume(string queue,
                                    bool noAck,
                                    string consumerTag,
                                    IDictionary filter,
                                    IBasicConsumer consumer)
         {
-            return BasicConsume(ticket, queue, noAck, consumerTag, false, false, filter, consumer);
+            return BasicConsume(queue, noAck, consumerTag, false, false, filter, consumer);
         }
 
         public class BasicConsumerRpcContinuation : SimpleBlockingRpcContinuation
@@ -650,8 +590,7 @@ namespace RabbitMQ.Client.Impl
             public BasicConsumerRpcContinuation() { }
         }
 
-        public string BasicConsume(ushort ticket,
-                                   string queue,
+        public string BasicConsume(string queue,
                                    bool noAck,
                                    string consumerTag,
                                    bool noLocal,
@@ -669,7 +608,7 @@ namespace RabbitMQ.Client.Impl
             // the RPC response, but a response is still expected.
             try
             {
-                _Private_BasicConsume(ticket, queue, consumerTag, noLocal, noAck, exclusive,
+                _Private_BasicConsume(queue, consumerTag, noLocal, noAck, exclusive,
                     /*nowait:*/ false, filter);
             }
             catch (AlreadyClosedException)
@@ -764,15 +703,14 @@ namespace RabbitMQ.Client.Impl
             public BasicGetRpcContinuation() { }
         }
 
-        public BasicGetResult BasicGet(ushort ticket,
-                                       string queue,
+        public BasicGetResult BasicGet(string queue,
                                        bool noAck)
         {
             BasicGetRpcContinuation k = new BasicGetRpcContinuation();
             Enqueue(k);
             try
             {
-                _Private_BasicGet(ticket, queue, noAck);
+                _Private_BasicGet(queue, noAck);
             }
             catch (AlreadyClosedException)
             {
@@ -788,8 +726,7 @@ namespace RabbitMQ.Client.Impl
                                       ushort prefetchCount,
                                       bool global);
 
-        public abstract void _Private_BasicConsume(ushort ticket,
-                                                   string queue,
+        public abstract void _Private_BasicConsume(string queue,
                                                    string consumerTag,
                                                    bool noLocal,
                                                    bool noAck,
@@ -800,26 +737,22 @@ namespace RabbitMQ.Client.Impl
         public abstract void _Private_BasicCancel(string consumerTag,
                                                   bool nowait);
 
-        public void BasicPublish(ushort ticket,
-                                 PublicationAddress addr,
+        public void BasicPublish(PublicationAddress addr,
                                  IBasicProperties basicProperties,
                                  byte[] body)
         {
-            BasicPublish(ticket,
-                         addr.ExchangeName,
+            BasicPublish(addr.ExchangeName,
                          addr.RoutingKey,
                          basicProperties,
                          body);
         }
 
-        public void BasicPublish(ushort ticket,
-                                 string exchange,
+        public void BasicPublish(string exchange,
                                  string routingKey,
                                  IBasicProperties basicProperties,
                                  byte[] body)
         {
-            BasicPublish(ticket,
-                         exchange,
+            BasicPublish(exchange,
                          routingKey,
                          false,
                          false,
@@ -827,8 +760,7 @@ namespace RabbitMQ.Client.Impl
                          body);
         }
 
-        public void BasicPublish(ushort ticket,
-                                 string exchange,
+        public void BasicPublish(string exchange,
                                  string routingKey,
                                  bool mandatory,
                                  bool immediate,
@@ -839,8 +771,7 @@ namespace RabbitMQ.Client.Impl
             {
                 basicProperties = CreateBasicProperties();
             }
-            _Private_BasicPublish(ticket,
-                                  exchange,
+            _Private_BasicPublish(exchange,
                                   routingKey,
                                   mandatory,
                                   immediate,
@@ -848,8 +779,7 @@ namespace RabbitMQ.Client.Impl
                                   body);
         }
 
-        public abstract void _Private_BasicPublish(ushort ticket,
-                                                   string exchange,
+        public abstract void _Private_BasicPublish(string exchange,
                                                    string routingKey,
                                                    bool mandatory,
                                                    bool immediate,
@@ -873,22 +803,49 @@ namespace RabbitMQ.Client.Impl
 
         void IDisposable.Dispose()
         {
-            Close(200, "");
+            Close();
+        }
+        
+        public void Close()
+        {
+               Close(200, "Goodbye");
         }
 
-        public void Close(ushort replyCode, string replyText)
+               public void Close(ushort replyCode, string replyText)
+        {
+               Close(replyCode, replyText, false);
+        }
+        
+        public void Abort() 
+        {
+            Abort(200, "Goodbye");
+        }
+        
+        public void Abort(ushort replyCode, string replyText)
+        {
+            Close(replyCode, replyText, true);
+        }
+        
+        public void Close(ushort replyCode, string replyText, bool abort)
         {
             ShutdownContinuation k = new ShutdownContinuation();
             ModelShutdown += new ModelShutdownEventHandler(k.OnShutdown);
-
-            if (SetCloseReason(new ShutdownEventArgs(ShutdownInitiator.Application,
-                                 replyCode,
-                                 replyText)))
-            {
-                _Private_ChannelClose(replyCode, replyText, 0, 0);
+            
+            try {
+                if (SetCloseReason(new ShutdownEventArgs(ShutdownInitiator.Application,
+                                     replyCode,
+                                     replyText)))
+                {
+                    _Private_ChannelClose(replyCode, replyText, 0, 0);
+                }
+                k.Wait();
+            } catch (AlreadyClosedException ace) {
+               if (!abort)
+                       throw ace;
+            } catch (IOException ioe) {
+               if (!abort)
+                       throw ioe;
             }
-
-            k.Wait();
         }
 
         public void HandleChannelCloseOk()
@@ -905,8 +862,7 @@ namespace RabbitMQ.Client.Impl
 
         public abstract void _Private_ChannelCloseOk();
 
-        public abstract void _Private_BasicGet(ushort ticket,
-                                               string queue,
+        public abstract void _Private_BasicGet(string queue,
                                                bool noAck);
 
         public void HandleBasicGetOk(ulong deliveryTag,
index 454113701d813f7b89987ba63cf8dbc6ad7b4a9a..df688b237ff862ff89c780d0a33ce6aed0aeaedd 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 7aa867313473c4560e18c80ac8dc022ec118650a..889a2fa1f9b57bc873635c4b6effcb6db98799fd 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index d24a6a098bbd972fc1b9e41ad7cdfb9a9b6ea901..74b28c1a4a818b33f7cfe0d5739649a8dcbf9ad5 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index e23e64024f9541002111451a887901ba3bf1c17d..2263536b6f4f360824447058cb65ab843428878a 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9be97452f4623cfc2205704ea607bee1a30b0b16..fdc280851fc078c0c1c7ed84d643eba32dd2f448 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 248870941763f8208e303ab16f5c641ba7924652..b30d33ecd109cec2ac0c351d767062ef25e196d1 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -165,7 +171,8 @@ namespace RabbitMQ.Client.Impl
             {
                 if (m_closeReason != null)
                 {
-                    throw new AlreadyClosedException(m_closeReason);
+                    if (!m_connection.Protocol.CanSendWhileClosed(cmd))
+                           throw new AlreadyClosedException(m_closeReason);
                 }
                 // We transmit *inside* the lock to avoid interleaving
                 // of frames within a channel.
@@ -174,6 +181,11 @@ namespace RabbitMQ.Client.Impl
         }
 
         public void Close(ShutdownEventArgs reason)
+        {
+            Close(reason, true);
+        }
+        
+        public void Close(ShutdownEventArgs reason, bool notify)
         {
             lock (m_shutdownLock)
             {
@@ -182,7 +194,19 @@ namespace RabbitMQ.Client.Impl
                     m_closeReason = reason;
                 }
             }
-
+            if (notify)
+                OnSessionShutdown(m_closeReason);
+        }
+        
+        public void Notify()
+        {
+            // Ensure that we notify only when session is already closed
+            // If not, throw exception, since this is a serious bug in the library
+            lock (m_shutdownLock)
+            {
+                   if (m_closeReason == null)
+                    throw new Exception("Internal Error in Session.Close");    
+            }
             OnSessionShutdown(m_closeReason);
         }
     }
index 5ac3100a10bd49cce74bbcacf0c7a908a3818c53..f8e52853469719e4c9ccb802e3feedf975b88658 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 44d5e14e45e304adefd8e830e9677e96df47680a..2604a03f4e65b37be3fe9a1be2796b8958da2089 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 923fb3ad0c25d19c74114e5b23ef510be429a54e..dde577a71a6ec1f813ff01c889e0ef6d371cc4cf 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 966146562696f002d1831cd9fdfc5a1c0b1dd09f..9d37bc7c772d263683e574f182b8a1181951ef6e 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -72,6 +78,8 @@ namespace RabbitMQ.Client.Impl
             m_endpoint = endpoint;
             m_socket = new TcpClient();
             m_socket.Connect(endpoint.HostName, endpoint.Port);
+            // disable Nagle's algorithm, for more consistently low latency 
+            m_socket.NoDelay = true;
 
             Stream netstream = m_socket.GetStream();
             m_reader = new NetworkBinaryReader(netstream);
index 34e08267a8fc1293c9157207ffb2f8f3174aef45..88f2ad4159090846191dc7e5f0a6ad91d2c22b5f 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 170920de361a0b8c5266c680dfc0f2f016031b15..5bb70bf28137c5a700f7629e5d2e1125e26f915d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 300844e626d19c2a1f1c1f7441b955a63b7c0af7..ebcac39153f92eece02162f45823701024723f8d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index a1c36aa48858c82cdc881875432c39865728b4cc..86bbb6a0446f7daf676b1630325ff85124cfb7ae 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index bf2d8e5ddc852badbe63b36c7bcf894ed523515c..0428408840c7faf4feb29de70048705859599ede 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 691d9402a2e045fafe0a55f05c8b8429b125a453..0defc4ea62c252f79fa10b497e05fbc79a5ba86d 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index ba6a8f3eeaf3e529fa42c98a3e309379fe674a01..1fdbe83fe816a4fd564bdd97767852fd48a1a4f4 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 5f95f92781b772bb2a269a977757841d2de8c263..71a1e977abab7f2d7c84bce03b0913441c3112ae 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -54,7 +60,6 @@ using RabbitMQ.Util;
 
 namespace RabbitMQ.Client.Framing.Impl.v0_8 {
     public abstract class ProtocolBase: AbstractProtocolBase {
-       public override bool DefaultSuppressAccessRequest { get { return false; } }
 
         public override IFrameHandler CreateFrameHandler(AmqpTcpEndpoint endpoint) {
             return new SocketFrameHandler_0_9(endpoint);
@@ -96,5 +101,10 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8 {
             replyClassId = RabbitMQ.Client.Framing.Impl.v0_8.ChannelCloseOk.ClassId;
             replyMethodId = RabbitMQ.Client.Framing.Impl.v0_8.ChannelCloseOk.MethodId;                                                                                     
         }
+        
+        public override bool CanSendWhileClosed(Command cmd)
+        {
+            return cmd.m_method is RabbitMQ.Client.Framing.Impl.v0_8.ChannelCloseOk;
+        }
     }
 }
index cb612a93cb7bd9ad04072b54cc1595547f85accc..22280b26bad50bce8a37414a26740bb95ca7381b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 9e4a88ea508b44be5c6a10f722d0342cfedb72e6..550951a559d9d7f1c7a613c5330fecff1d568633 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -54,7 +60,6 @@ using RabbitMQ.Util;
 
 namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
     public abstract class ProtocolBase: AbstractProtocolBase {
-       public override bool DefaultSuppressAccessRequest { get { return true; } }
 
         public override IFrameHandler CreateFrameHandler(AmqpTcpEndpoint endpoint) {
             return new SocketFrameHandler_0_9(endpoint);
@@ -96,5 +101,10 @@ namespace RabbitMQ.Client.Framing.Impl.v0_8qpid {
             replyClassId = RabbitMQ.Client.Framing.Impl.v0_8qpid.ChannelCloseOk.ClassId;
             replyMethodId = RabbitMQ.Client.Framing.Impl.v0_8qpid.ChannelCloseOk.MethodId;                                                                                     
         }
+        
+        public override bool CanSendWhileClosed(Command cmd)
+        {
+            return cmd.m_method is RabbitMQ.Client.Framing.Impl.v0_8qpid.ChannelCloseOk;
+        }
     }
 }
index e094362927aa034573788f6709ab408c6c002936..b30b01f94c5dffa3c1661ad608f7039d37637688 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 4bbfae07f9b8e96b3b7a4607b9d8b732c3f02406..bc6a01049da8a51bd90f9adcac000c7e7c2dd0bb 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -54,7 +60,6 @@ using RabbitMQ.Util;
 
 namespace RabbitMQ.Client.Framing.Impl.v0_9 {
     public abstract class ProtocolBase: AbstractProtocolBase {
-       public override bool DefaultSuppressAccessRequest { get { return false; } }
 
         public override IFrameHandler CreateFrameHandler(AmqpTcpEndpoint endpoint) {
             return new SocketFrameHandler_0_9(endpoint);
@@ -96,5 +101,10 @@ namespace RabbitMQ.Client.Framing.Impl.v0_9 {
             replyClassId = RabbitMQ.Client.Framing.Impl.v0_9.ChannelCloseOk.ClassId;
             replyMethodId = RabbitMQ.Client.Framing.Impl.v0_9.ChannelCloseOk.MethodId;                                                                                     
         }
+        
+        public override bool CanSendWhileClosed(Command cmd)
+        {
+            return cmd.m_method is RabbitMQ.Client.Framing.Impl.v0_9.ChannelCloseOk;
+        }
     }
 }
index 8d2bb10c316cae91eff3108b34f7693719348a4c..c1cb54fa9a18197e4c8f86e0aa28f06ece082e71 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -78,9 +84,8 @@ namespace RabbitMQ.Client.MessagePatterns {
     ///        using (IConnection conn = new ConnectionFactory()
     ///                                        .CreateConnection(serverAddress)) {
     ///            using (IModel ch = conn.CreateModel()) {
-    ///                ushort ticket = ch.AccessRequest("/data");
     ///                SimpleRpcClient client =
-    ///                    new SimpleRpcClient(ch, ticket, queueName);
+    ///                    new SimpleRpcClient(ch, queueName);
     ///                client.TimeoutMilliseconds = 5000; // optional
     ///        
     ///                /// ... make use of the various Call() overloads
@@ -125,15 +130,12 @@ namespace RabbitMQ.Client.MessagePatterns {
        public event EventHandler Disconnected;
 
         protected IModel m_model;
-        protected ushort m_ticket;
         protected Subscription m_subscription;
         private PublicationAddress m_address;
         private int m_timeout;
 
         ///<summary>Retrieve the IModel this instance uses to communicate.</summary>
         public IModel Model { get { return m_model; } }
-        ///<summary>Retrieve the ticket this instance uses to take AMQP actions.</summary>
-        public ushort Ticket { get { return m_ticket; } }
 
         ///<summary>Retrieve the Subscription that is used to receive
         ///RPC replies corresponding to Call() RPC requests. May be
@@ -185,29 +187,28 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///<summary>Construct an instance with no configured
         ///Address. The Address property must be set before Call() or
         ///Cast() are called.</summary>
-        public SimpleRpcClient(IModel model, ushort ticket)
-            : this(model, ticket, (PublicationAddress) null) {}
+        public SimpleRpcClient(IModel model)
+            : this(model, (PublicationAddress) null) {}
 
         ///<summary>Construct an instance that will deliver to the
         ///default exchange (""), with routing key equal to the passed
         ///in queueName, thereby delivering directly to a named queue
         ///on the AMQP server.</summary>
-        public SimpleRpcClient(IModel model, ushort ticket, string queueName)
-            : this(model, ticket, new PublicationAddress(ExchangeType.Direct, "", queueName)) {}
+        public SimpleRpcClient(IModel model, string queueName)
+            : this(model, new PublicationAddress(ExchangeType.Direct, "", queueName)) {}
 
         ///<summary>Construct an instance that will deliver to the
         ///named and typed exchange, with the given routing
         ///key.</summary>
-        public SimpleRpcClient(IModel model, ushort ticket,
-                               string exchange, string exchangeType, string routingKey)
-            : this(model, ticket, new PublicationAddress(exchangeType, exchange, routingKey)) {}
+        public SimpleRpcClient(IModel model, string exchange,
+                               string exchangeType, string routingKey)
+            : this(model, new PublicationAddress(exchangeType, exchange, routingKey)) {}
 
         ///<summary>Construct an instance that will deliver to the
         ///given address.</summary>
-        public SimpleRpcClient(IModel model, ushort ticket, PublicationAddress address)
+        public SimpleRpcClient(IModel model, PublicationAddress address)
         {
             m_model = model;
-            m_ticket = ticket;
             m_address = address;
             m_subscription = null;
            m_timeout = Timeout.Infinite;
@@ -234,7 +235,7 @@ namespace RabbitMQ.Client.MessagePatterns {
         protected virtual void EnsureSubscription()
         {
             if (m_subscription == null) {
-                m_subscription = new Subscription(m_model, m_ticket);
+                m_subscription = new Subscription(m_model);
             }
         }
 
@@ -426,8 +427,7 @@ namespace RabbitMQ.Client.MessagePatterns {
         public virtual void Cast(IBasicProperties requestProperties,
                                  byte[] body)
         {
-            m_model.BasicPublish(m_ticket,
-                                 Address,
+            m_model.BasicPublish(Address,
                                  requestProperties,
                                  body);
         }
index 63b94089b9d1e04a545cea14561652a4645b6eb1..baaf8fb8455b4f0295d4c89286332917be220496 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -75,8 +81,7 @@ namespace RabbitMQ.Client.MessagePatterns {
     ///        using (IConnection conn = new ConnectionFactory()
     ///                                        .CreateConnection(serverAddress)) {
     ///            using (IModel ch = conn.CreateModel()) {
-    ///                ushort ticket = ch.AccessRequest("/data");
-    ///                Subscription sub = new Subscription(ch, ticket, queueName);
+    ///                Subscription sub = new Subscription(ch, queueName);
     ///                new MySimpleRpcServerSubclass(sub).MainLoop();
     ///            }
     ///        }
@@ -256,8 +261,7 @@ namespace RabbitMQ.Client.MessagePatterns {
                 }
 
                 replyProperties.CorrelationId = properties.CorrelationId;
-                m_subscription.Model.BasicPublish(m_subscription.Ticket,
-                                                  replyAddress,
+                m_subscription.Model.BasicPublish(replyAddress,
                                                   replyProperties,
                                                   reply);
             } else {
@@ -269,23 +273,23 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///<summary>Called by HandleCall and HandleCast when a
         ///"jms/stream-message" request is received.</summary>
         ///<remarks>
-       ///<para>
-       /// The args array contains the values decoded by HandleCall
-       /// or HandleCast.
-       ///</para>
-       ///<para>
-       /// The replyWriter parameter will be null if we were called
-       /// from HandleCast, in which case a reply is not expected or
-       /// possible, or non-null if we were called from
-       /// HandleCall. Use the methods of replyWriter in this case to
-       /// assemble your reply, which will be sent back to the remote
-       /// caller.
-       ///</para>
-       ///<para>
-       /// This default implementation does nothing, which
-       /// effectively sends back an empty reply to any and all
-       /// remote callers.
-       ///</para>
+        ///<para>
+        /// The args array contains the values decoded by HandleCall
+        /// or HandleCast.
+        ///</para>
+        ///<para>
+        /// The replyWriter parameter will be null if we were called
+        /// from HandleCast, in which case a reply is not expected or
+        /// possible, or non-null if we were called from
+        /// HandleCall. Use the methods of replyWriter in this case to
+        /// assemble your reply, which will be sent back to the remote
+        /// caller.
+        ///</para>
+        ///<para>
+        /// This default implementation does nothing, which
+        /// effectively sends back an empty reply to any and all
+        /// remote callers.
+        ///</para>
         ///</remarks>
         public virtual void HandleStreamMessageCall(IStreamMessageBuilder replyWriter,
                                                     bool isRedelivered,
@@ -298,29 +302,29 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///<summary>Called by ProcessRequest(), this is the most
         ///general method that handles RPC-style requests.</summary>
         ///<remarks>
-       ///<para>
-       /// This method should map requestProperties and body to
-       /// replyProperties and the returned byte array.
-       ///</para>
-       ///<para>
-       /// The default implementation checks
-       /// requestProperties.ContentType, and if it is
-       /// "jms/stream-message" (i.e. the current value of
-       /// StreamMessageBuilder.MimeType), parses it using
-       /// StreamMessageReader and delegates to
-       /// HandleStreamMessageCall before encoding and returning the
-       /// reply. If the ContentType is any other value, the request
-       /// is passed to HandleSimpleCall instead.
-       ///</para>
-       ///<para>
-       /// The isRedelivered flag is true when the server knows for
-       /// sure that it has tried to send this request previously
-       /// (although not necessarily to this application). It is not
-       /// a reliable indicator of previous receipt, however - the
-       /// only claim it makes is that a delivery attempt was made,
-       /// not that the attempt succeeded. Be careful if you choose
-       /// to use the isRedelivered flag.
-       ///</para>
+        ///<para>
+        /// This method should map requestProperties and body to
+        /// replyProperties and the returned byte array.
+        ///</para>
+        ///<para>
+        /// The default implementation checks
+        /// requestProperties.ContentType, and if it is
+        /// "jms/stream-message" (i.e. the current value of
+        /// StreamMessageBuilder.MimeType), parses it using
+        /// StreamMessageReader and delegates to
+        /// HandleStreamMessageCall before encoding and returning the
+        /// reply. If the ContentType is any other value, the request
+        /// is passed to HandleSimpleCall instead.
+        ///</para>
+        ///<para>
+        /// The isRedelivered flag is true when the server knows for
+        /// sure that it has tried to send this request previously
+        /// (although not necessarily to this application). It is not
+        /// a reliable indicator of previous receipt, however - the
+        /// only claim it makes is that a delivery attempt was made,
+        /// not that the attempt succeeded. Be careful if you choose
+        /// to use the isRedelivered flag.
+        ///</para>
         ///</remarks>
         public virtual byte[] HandleCall(bool isRedelivered,
                                          IBasicProperties requestProperties,
@@ -347,13 +351,13 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///<summary>Called by the default HandleCall() implementation
         ///as a fallback.</summary>
         ///<remarks>
-       /// If the MIME ContentType of the request did not match any
-       /// of the types specially recognised
-       /// (e.g. "jms/stream-message"), this method is called instead
-       /// with the raw bytes of the request. It should fill in
-       /// replyProperties (or set it to null) and return a byte
-       /// array to send back to the remote caller as a reply
-       /// message.
+        /// If the MIME ContentType of the request did not match any
+        /// of the types specially recognised
+        /// (e.g. "jms/stream-message"), this method is called instead
+        /// with the raw bytes of the request. It should fill in
+        /// replyProperties (or set it to null) and return a byte
+        /// array to send back to the remote caller as a reply
+        /// message.
         ///</remarks>
         public virtual byte[] HandleSimpleCall(bool isRedelivered,
                                                IBasicProperties requestProperties,
@@ -369,26 +373,26 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///general method that handles asynchronous, one-way
         ///requests.</summary>
         ///<remarks>
-       ///<para>
-       /// The default implementation checks
-       /// requestProperties.ContentType, and if it is
-       /// "jms/stream-message" (i.e. the current value of
-       /// StreamMessageBuilder.MimeType), parses it using
-       /// StreamMessageReader and delegates to
-       /// HandleStreamMessageCall, passing in null as the
-       /// replyWriter parameter to indicate that no reply is desired
-       /// or possible. If the ContentType is any other value, the
-       /// request is passed to HandleSimpleCast instead.
-       ///</para>
-       ///<para>
-       /// The isRedelivered flag is true when the server knows for
-       /// sure that it has tried to send this request previously
-       /// (although not necessarily to this application). It is not
-       /// a reliable indicator of previous receipt, however - the
-       /// only claim it makes is that a delivery attempt was made,
-       /// not that the attempt succeeded. Be careful if you choose
-       /// to use the isRedelivered flag.
-       ///</para>
+        ///<para>
+        /// The default implementation checks
+        /// requestProperties.ContentType, and if it is
+        /// "jms/stream-message" (i.e. the current value of
+        /// StreamMessageBuilder.MimeType), parses it using
+        /// StreamMessageReader and delegates to
+        /// HandleStreamMessageCall, passing in null as the
+        /// replyWriter parameter to indicate that no reply is desired
+        /// or possible. If the ContentType is any other value, the
+        /// request is passed to HandleSimpleCast instead.
+        ///</para>
+        ///<para>
+        /// The isRedelivered flag is true when the server knows for
+        /// sure that it has tried to send this request previously
+        /// (although not necessarily to this application). It is not
+        /// a reliable indicator of previous receipt, however - the
+        /// only claim it makes is that a delivery attempt was made,
+        /// not that the attempt succeeded. Be careful if you choose
+        /// to use the isRedelivered flag.
+        ///</para>
         ///</remarks>
         public virtual void HandleCast(bool isRedelivered,
                                        IBasicProperties requestProperties,
@@ -410,10 +414,10 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///<summary>Called by the default HandleCast() implementation
         ///as a fallback.</summary>
         ///<remarks>
-       /// If the MIME ContentType of the request did not match any
-       /// of the types specially recognised
-       /// (e.g. "jms/stream-message"), this method is called instead
-       /// with the raw bytes of the request.
+        /// If the MIME ContentType of the request did not match any
+        /// of the types specially recognised
+        /// (e.g. "jms/stream-message"), this method is called instead
+        /// with the raw bytes of the request.
         ///</remarks>
         public virtual void HandleSimpleCast(bool isRedelivered,
                                              IBasicProperties requestProperties,
index 202c14a9ec3d592a909f9f89e4c9fb69c71013c6..956fb360ecd2ff647846c2341ac13575c1351256 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -87,12 +93,9 @@ namespace RabbitMQ.Client.MessagePatterns {
     ///</remarks>
     public class Subscription: IEnumerable, IEnumerator, IDisposable {
         protected IModel m_model;
-        protected ushort m_ticket;
 
         ///<summary>Retrieve the IModel our subscription is carried by.</summary>
         public IModel Model { get { return m_model; } }
-        ///<summary>Retrieve the ticket we use for all our server operations.</summary>
-        public ushort Ticket { get { return m_ticket; } }
 
         protected string m_queueName;
         protected QueueingBasicConsumer m_consumer;
@@ -135,9 +138,9 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///property of the Subscription. After creating the queue, the
         ///queue is bound to the named exchange, using Bind() with the
         ///given routingKey bind parameter.</summary>
-        public Subscription(IModel model, ushort ticket,
-                            string exchangeName, string exchangeType, string routingKey)
-            : this(model, ticket)
+        public Subscription(IModel model, string exchangeName,
+                            string exchangeType, string routingKey)
+            : this(model)
         {
             Bind(exchangeName, exchangeType, routingKey);
         }
@@ -146,8 +149,8 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///consuming from a fresh, autodelete, anonymous queue. The
         ///name of the queue can be retrieved using the QueueName
         ///property of the Subscription.</summary>
-        public Subscription(IModel model, ushort ticket)
-            : this(model, ticket, null) {}
+        public Subscription(IModel model)
+            : this(model, null) {}
 
         ///<summary>Creates a new Subscription in "noAck" mode,
         ///consuming from a named queue. If the queueName parameter is
@@ -157,9 +160,9 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///called. After declaring the queue and starting the
         ///consumer, the queue is bound to the named exchange, using
         ///Bind() with the given routingKey bind parameter.</summary>
-        public Subscription(IModel model, ushort ticket, string queueName,
-                            string exchangeName, string exchangeType, string routingKey)
-            : this(model, ticket, queueName)
+        public Subscription(IModel model, string queueName, string exchangeName,
+                            string exchangeType, string routingKey)
+            : this(model, queueName)
         {
             Bind(exchangeName, exchangeType, routingKey);
         }
@@ -170,8 +173,8 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///anonymous queue; otherwise, the queue is declared using
         ///IModel.QueueDeclare() before IModel.BasicConsume() is
         ///called.</summary>
-        public Subscription(IModel model, ushort ticket, string queueName)
-            : this(model, ticket, queueName, true) {}
+        public Subscription(IModel model, string queueName)
+            : this(model, queueName, true) {}
 
         ///<summary>Creates a new Subscription, with full control over
         ///both "noAck" mode and the name of the queue (which, if null
@@ -180,9 +183,9 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///queue and starting the consumer, the queue is bound to the
         ///named exchange, using Bind() with the given routingKey bind
         ///parameter.</summary>
-        public Subscription(IModel model, ushort ticket, string queueName, bool noAck,
+        public Subscription(IModel model, string queueName, bool noAck,
                             string exchangeName, string exchangeType, string routingKey)
-            : this(model, ticket, queueName, noAck)
+            : this(model, queueName, noAck)
         {
             Bind(exchangeName, exchangeType, routingKey);
         }
@@ -191,19 +194,18 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///both "noAck" mode and the name of the queue (which, if null
         ///or the empty-string, will be a fresh autodelete queue, as
         ///for the other constructor overloads).</summary>
-        public Subscription(IModel model, ushort ticket, string queueName, bool noAck)
+        public Subscription(IModel model, string queueName, bool noAck)
         {
             m_model = model;
-            m_ticket = ticket;
             if (queueName == null || queueName.Equals("")) {
-                m_queueName = m_model.QueueDeclare(ticket);
+                m_queueName = m_model.QueueDeclare();
                 m_shouldDelete = true;
             } else {
-                m_queueName = m_model.QueueDeclare(ticket, queueName);
+                m_queueName = m_model.QueueDeclare(queueName);
                 m_shouldDelete = false;
             }
             m_consumer = new QueueingBasicConsumer(m_model);
-            m_consumerTag = m_model.BasicConsume(m_ticket, m_queueName, m_noAck, null, m_consumer);
+            m_consumerTag = m_model.BasicConsume(m_queueName, m_noAck, null, m_consumer);
             m_latestEvent = null;
         }
 
@@ -225,7 +227,7 @@ namespace RabbitMQ.Client.MessagePatterns {
                     // We set m_shouldDelete false before attempting
                     // the delete, because trying twice is worse than
                     // trying once and failing.
-                    m_model.QueueDelete(m_ticket, m_queueName, false, false, false);
+                    m_model.QueueDelete(m_queueName, false, false, false);
                 }
             } catch (OperationInterruptedException) {
                 // We don't mind, here.
@@ -254,8 +256,8 @@ namespace RabbitMQ.Client.MessagePatterns {
         ///</remarks>
         public void Bind(string exchangeName, string exchangeType, string routingKey)
         {
-            m_model.ExchangeDeclare(m_ticket, exchangeName, exchangeType);
-            m_model.QueueBind(m_ticket, m_queueName, exchangeName, routingKey, false, null);
+            m_model.ExchangeDeclare(exchangeName, exchangeType);
+            m_model.QueueBind(m_queueName, exchangeName, routingKey, false, null);
         }
 
         ///<summary>If LatestEvent is non-null, passes it to
@@ -296,22 +298,22 @@ namespace RabbitMQ.Client.MessagePatterns {
 
         ///<summary>Retrieves the next incoming delivery in our
         ///subscription queue.</summary>
-       ///<remarks>
-       ///<para>
-       /// Returns null when the end of the stream is reached and on
+        ///<remarks>
+        ///<para>
+        /// Returns null when the end of the stream is reached and on
         /// every subsequent call. End-of-stream can arise through the
         /// action of the Subscription.Close() method, or through the
         /// closure of the IModel or its underlying IConnection.
-       ///</para>
-       ///<para>
-       /// Updates LatestEvent to the value returned.
-       ///</para>
-       ///<para>
-       /// Does not acknowledge any deliveries at all (but in "noAck"
+        ///</para>
+        ///<para>
+        /// Updates LatestEvent to the value returned.
+        ///</para>
+        ///<para>
+        /// Does not acknowledge any deliveries at all (but in "noAck"
         /// mode, the server will have auto-acknowledged each event
         /// before it is even sent across the wire to us).
-       ///</para>
-       ///</remarks>
+        ///</para>
+        ///</remarks>
         public BasicDeliverEventArgs Next()
         {
             try {
@@ -323,54 +325,53 @@ namespace RabbitMQ.Client.MessagePatterns {
             } catch (EndOfStreamException) {
                 m_latestEvent = null;
             }
-           return m_latestEvent;
+            return m_latestEvent;
         }
 
         ///<summary>Retrieves the next incoming delivery in our
         ///subscription queue, or times out after a specified number
         ///of milliseconds.</summary>
-
-       ///<remarks>
-       ///<para>
-       /// Returns false only if the timeout expires before either a
-       /// delivery appears or the end-of-stream is reached. If false
-       /// is returned, the out parameter "result" is set to null,
-       /// but LatestEvent is not updated.
-       ///</para>
-       ///<para>
-       /// Returns true to indicate a delivery or the end-of-stream.
-       ///</para>
-       ///<para>
-       /// If a delivery is already waiting in the queue, or one
-       /// arrives before the timeout expires, it is removed from the
-       /// queue and placed in the "result" out parameter. If the
-       /// end-of-stream is detected before the timeout expires,
-       /// "result" is set to null.
-       ///</para>
-       ///<para>
-       /// Whenever this method returns true, it updates LatestEvent
-       /// to the value placed in "result" before returning.
-       ///</para>
-       ///<para>
-       /// End-of-stream can arise through the action of the
-       /// Subscription.Close() method, or through the closure of the
-       /// IModel or its underlying IConnection.
-       ///</para>
-       ///<para>
-       /// This method does not acknowledge any deliveries at all
+        ///<remarks>
+        ///<para>
+        /// Returns false only if the timeout expires before either a
+        /// delivery appears or the end-of-stream is reached. If false
+        /// is returned, the out parameter "result" is set to null,
+        /// but LatestEvent is not updated.
+        ///</para>
+        ///<para>
+        /// Returns true to indicate a delivery or the end-of-stream.
+        ///</para>
+        ///<para>
+        /// If a delivery is already waiting in the queue, or one
+        /// arrives before the timeout expires, it is removed from the
+        /// queue and placed in the "result" out parameter. If the
+        /// end-of-stream is detected before the timeout expires,
+        /// "result" is set to null.
+        ///</para>
+        ///<para>
+        /// Whenever this method returns true, it updates LatestEvent
+        /// to the value placed in "result" before returning.
+        ///</para>
+        ///<para>
+        /// End-of-stream can arise through the action of the
+        /// Subscription.Close() method, or through the closure of the
+        /// IModel or its underlying IConnection.
+        ///</para>
+        ///<para>
+        /// This method does not acknowledge any deliveries at all
         /// (but in "noAck" mode, the server will have
         /// auto-acknowledged each event before it is even sent across
         /// the wire to us).
-       ///</para>
+        ///</para>
         ///<para>
-       /// A timeout of -1 (i.e. System.Threading.Timeout.Infinite)
-       /// will be interpreted as a command to wait for an
-       /// indefinitely long period of time for an item or the end of
-       /// the stream to become available. Usage of such a timeout is
-       /// equivalent to calling Next() with no arguments (modulo
-       /// predictable method signature differences).
+        /// A timeout of -1 (i.e. System.Threading.Timeout.Infinite)
+        /// will be interpreted as a command to wait for an
+        /// indefinitely long period of time for an item or the end of
+        /// the stream to become available. Usage of such a timeout is
+        /// equivalent to calling Next() with no arguments (modulo
+        /// predictable method signature differences).
         ///</para>
-       ///</remarks>
+        ///</remarks>
         public bool Next(int millisecondsTimeout, out BasicDeliverEventArgs result)
         {
             try {
@@ -378,17 +379,17 @@ namespace RabbitMQ.Client.MessagePatterns {
                     // Closed!
                     throw new InvalidOperationException();
                 }
-               object qValue;
-               if (!m_consumer.Queue.Dequeue(millisecondsTimeout, out qValue)) {
-                   result = null;
-                   return false;
-               }
+                object qValue;
+                if (!m_consumer.Queue.Dequeue(millisecondsTimeout, out qValue)) {
+                    result = null;
+                    return false;
+                }
                 m_latestEvent = (BasicDeliverEventArgs) qValue;
             } catch (EndOfStreamException) {
                 m_latestEvent = null;
             }
-           result = m_latestEvent;
-           return true;
+            result = m_latestEvent;
+            return true;
         }
 
         ///<summary>Implementation of the IEnumerable interface, for
index 00b03103b224e5273a646bf206f42815efa26183..361e8b161b2817a4c8eb7b98d9ea65bb84044e86 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -68,14 +74,13 @@ namespace RabbitMQ.Client.Examples {
 
                 using (IConnection conn = new ConnectionFactory().CreateConnection(args[0])) {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
 
                         object[] addends = new object[args.Length - 1];
                         for (int i = 0; i < args.Length - 1; i++) {
                             addends[i] = double.Parse(args[i + 1]);
                         }
 
-                        SimpleRpcClient client = new SimpleRpcClient(ch, ticket, "AddServer");
+                        SimpleRpcClient client = new SimpleRpcClient(ch, "AddServer");
                        client.TimeoutMilliseconds = 5000;
                        client.TimedOut += new EventHandler(TimedOutHandler);
                        client.Disconnected += new EventHandler(DisconnectedHandler);
index a2c3c8f66a121f2131b6308637997ec5dd831c8e..1bb8fb3f1b4319fbe9d13e599bd3793f7926a27c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -69,8 +75,7 @@ namespace RabbitMQ.Client.Examples {
 
                 using (IConnection conn = new ConnectionFactory().CreateConnection(args[0])) {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
-                        Subscription sub = new Subscription(ch, ticket, "AddServer");
+                        Subscription sub = new Subscription(ch, "AddServer");
                         new AddServer(sub).MainLoop();
                     }
                 }
index a291bdf89bf5a6cc78eadce4490549715f7a658e..4f80a5224dc6ec7d7a3b346ef64da7ca91a1a3eb 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -49,6 +55,7 @@
 //
 //---------------------------------------------------------------------------
 using System;
+using System.Collections;
 using System.IO;
 using System.Text;
 
@@ -64,9 +71,17 @@ namespace RabbitMQ.Client.Examples {
                 int optionIndex = 0;
                 bool durable = false;
                 bool delete = false;
+                IDictionary arguments = null;
                 while (optionIndex < args.Length) {
                     if (args[optionIndex] == "/durable") { durable = true; }
                     else if (args[optionIndex] == "/delete") { delete = true; }
+                    else if (args[optionIndex].StartsWith("/arg:")) {
+                        if (arguments == null) { arguments = new Hashtable(); }
+                        string[] pieces = args[optionIndex].Split(new Char[] { ':' });
+                        if (pieces.Length >= 3) {
+                            arguments[pieces[1]] = pieces[2];
+                        }
+                    }
                     else { break; }
                     optionIndex++;
                 }
@@ -79,6 +94,7 @@ namespace RabbitMQ.Client.Examples {
                     Console.Error.WriteLine("Available options:");
                     Console.Error.WriteLine("  /durable      declare a durable queue");
                     Console.Error.WriteLine("  /delete       delete after declaring");
+                    Console.Error.WriteLine("  /arg:KEY:VAL  add longstr entry to arguments table");
                     return 1;
                 }
 
@@ -88,20 +104,21 @@ namespace RabbitMQ.Client.Examples {
                 using (IConnection conn = new ConnectionFactory().CreateConnection(serverAddress))
                 {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
 
-                        string finalName = ch.QueueDeclare(ticket, inputQueueName, durable);
+                        string finalName = ch.QueueDeclare(inputQueueName, false,
+                                                           durable, false, false,
+                                                           false, arguments);
                         Console.WriteLine("{0}\t{1}", finalName, durable);
                 
                         while ((optionIndex + 1) < args.Length) {
                             string exchange = args[optionIndex++];
                             string routingKey = args[optionIndex++];
-                            ch.QueueBind(ticket, finalName, exchange, routingKey, false, null);
+                            ch.QueueBind(finalName, exchange, routingKey, false, null);
                             Console.WriteLine("{0}\t{1}\t{2}", finalName, exchange, routingKey);
                         }
 
                         if (delete) {
-                            ch.QueueDelete(ticket, finalName, false, false, false);
+                            ch.QueueDelete(finalName, false, false, false);
                         }
 
                         return 0;
index da6d7d5459a90a20bb20b81a75015969a8a18aa3..ec83bfc6b64056ac8240cc66f2808195b3b17167 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -82,12 +88,11 @@ namespace RabbitMQ.Client.Examples {
                         ch.ModelShutdown += new ModelShutdownEventHandler(Second);
                         ch.CallbackException += new CallbackExceptionEventHandler(OnCallbackException);
 
-                        ushort ticket = ch.AccessRequest("/data");
-                        string queueName = ch.QueueDeclare(ticket);
+                        string queueName = ch.QueueDeclare();
 
                         ThrowingConsumer consumer = new ThrowingConsumer(ch);
-                        string consumerTag = ch.BasicConsume(ticket, queueName, null, consumer);
-                        ch.BasicPublish(ticket, "", queueName, null, Encoding.UTF8.GetBytes("test"));
+                        string consumerTag = ch.BasicConsume(queueName, null, consumer);
+                        ch.BasicPublish("", queueName, null, Encoding.UTF8.GetBytes("test"));
                         ch.BasicCancel(consumerTag);
                         return 0;
                     }
index 8c829dfb07adf0a50310f9a8f6d4d4928adc4210..036ce3f12f2bc39f37b59283f6d1a56b2443c93c 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -78,13 +84,11 @@ namespace RabbitMQ.Client.Examples {
                 using (IConnection conn = new ConnectionFactory().CreateConnection(serverAddress))
                 {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
-
                         Subscription sub;
                         if (exchange == "") {
-                            sub = new Subscription(ch, ticket, routingKey);
+                            sub = new Subscription(ch, routingKey);
                         } else {
-                            sub = new Subscription(ch, ticket, exchange, exchangeType, routingKey);
+                            sub = new Subscription(ch, exchange, exchangeType, routingKey);
                         }
 
                         Console.WriteLine("Consumer tag: " + sub.ConsumerTag);
index 6c7661942c1d0966c0ae7a846c4c533ad6a01452..c6c2732494a381d10bf5e363d8bc58ce7c598258 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -96,12 +102,11 @@ namespace RabbitMQ.Client.Examples {
                     Console.Error.WriteLine("  /persist     send message in 'persistent' mode");
                     return 1;
                 }
-
-               Uri uri = new Uri(args[optionIndex++]);
+                
+                Uri uri = new Uri(args[optionIndex++]);
                 string exchange = uri.Segments[1].TrimEnd(new char[] { '/' });
-                string exchangeType =
-                   uri.Query.StartsWith("?type=") ? uri.Query.Substring(6) : null;
-               string routingKey = uri.Segments.Length > 2 ? uri.Segments[2] : "";
+                string exchangeType = uri.Query.StartsWith("?type=") ? uri.Query.Substring(6) : null;
+                string routingKey = uri.Segments.Length > 2 ? uri.Segments[2] : "";
 
                 if (exchange == "amq.default") {
                     exchange = "";
@@ -110,10 +115,9 @@ namespace RabbitMQ.Client.Examples {
                 using (IConnection conn = new ConnectionFactory().CreateConnection(uri))
                 {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
 
                         if (exchangeType != null) {
-                            ch.ExchangeDeclare(ticket, exchange, exchangeType);
+                            ch.ExchangeDeclare(exchange, exchangeType);
                         }
 
                         IMapMessageBuilder b = new MapMessageBuilder(ch);
@@ -182,8 +186,7 @@ namespace RabbitMQ.Client.Examples {
                         if (persistMode) {
                             ((IBasicProperties) b.GetContentHeader()).DeliveryMode = 2;
                         }
-                        ch.BasicPublish(ticket,
-                                        exchange,
+                        ch.BasicPublish(exchange,
                                         routingKey,
                                         (IBasicProperties) b.GetContentHeader(),
                                         b.GetContentBody());
index 3d5106a5453ab841a017b2345234726f1e83804a..4098c169d5735eecb7631df150caee64576a3b3b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -72,13 +78,11 @@ namespace RabbitMQ.Client.Examples {
                 using (IConnection conn = new ConnectionFactory().CreateConnection(serverAddress))
                 {
                     using (IModel ch = conn.CreateModel()) {
-                        ushort ticket = ch.AccessRequest("/data");
 
                         if (exchange != "") {
-                            ch.ExchangeDeclare(ticket, exchange, exchangeType);
+                            ch.ExchangeDeclare(exchange, exchangeType);
                         }
-                        ch.BasicPublish(ticket,
-                                        exchange,
+                        ch.BasicPublish(exchange,
                                         routingKey,
                                         null,
                                         Encoding.UTF8.GetBytes(message));
index b3f1778b045d5dc44279b4b0eda2ec97120c1dbf..26bb43e895cf592faadaff2892d93ad3ec944c6b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
@@ -74,10 +80,9 @@ namespace RabbitMQ.Client.Examples {
 
                 using (IModel ch = conn.CreateModel()) {
                     conn.AutoClose = true;
-                    ushort ticket = ch.AccessRequest("/data");
 
-                    ch.QueueDeclare(ticket, queueName);
-                    BasicGetResult result = ch.BasicGet(ticket, queueName, false);
+                    ch.QueueDeclare(queueName);
+                    BasicGetResult result = ch.BasicGet(queueName, false);
                     if (result == null) {
                         Console.WriteLine("No message available.");
                     } else {
index 0bde4a6328cfa61e2035997a3c71a6f9e7d29427..be2b64c93007c3365c713bfc8bebdaebf88faf46 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 8330066eef76334ed224f1eb467ac773444e6e90..56b495658858f24659666260e56501f58f8bad63 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 5bf6d9fa9905dd4124a1b8461317cf7f4d4e48ab..492fb30dd4ba9d364606a6f33698e17c8714308e 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index ca9470628fe090eb6c0b9f823103adb739877e52..5d247a06119becb6fbbfbc92d3d3939f71a508c7 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 17963d63140caabb3c613caae44ed63ff77be6c7..2e1399142a84cfddcaf5b59c90109d8e59ba71b3 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index f13968a39f436c10d6797cfc0e8c11f191026a64..9195a900a2c64f162466e8c9fbfb74e0032e0999 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 14fe3f16c744aa1fbd48722171de443894f62441..1d45d968bc35edc75c444b5a30ccbc57605e99e0 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //
index 540d2425fd57e9c30c4c2da29ad3939787d5f301..576c2933a378c3209bce3ade3e2e972c8f51010b 100644 (file)
@@ -4,7 +4,7 @@
 // The APL v2.0:
 //
 //---------------------------------------------------------------------------
-//   Copyright (C) 2007, 2008 LShift Ltd., Cohesive Financial
+//   Copyright (C) 2007-2009 LShift Ltd., Cohesive Financial
 //   Technologies LLC., and Rabbit Technologies Ltd.
 //
 //   Licensed under the Apache License, Version 2.0 (the "License");
 //
 //   The Original Code is The RabbitMQ .NET Client.
 //
-//   The Initial Developers of the Original Code are LShift Ltd.,
-//   Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd.
+//   The Initial Developers of the Original Code are LShift Ltd,
+//   Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
 //
-//   Portions created by LShift Ltd., Cohesive Financial Technologies
-//   LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007, 2008
-//   LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit
-//   Technologies Ltd.;
+//   Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+//   Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+//   are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+//   Technologies LLC, and Rabbit Technologies Ltd.
+//
+//   Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+//   Ltd. Portions created by Cohesive Financial Technologies LLC are
+//   Copyright (C) 2007-2009 Cohesive Financial Technologies
+//   LLC. Portions created by Rabbit Technologies Ltd are Copyright
+//   (C) 2007-2009 Rabbit Technologies Ltd.
 //
 //   All Rights Reserved.
 //