Author: rgreig
Date: Fri Jan  5 04:11:56 2007
New Revision: 493003

URL: http://svn.apache.org/viewvc?view=rev&rev=493003
Log:
Qpid-238. Refactored out the ugly GetExchangeName method.

Modified:
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/AbstractQmsMessage.cs

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/AbstractQmsMessage.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/AbstractQmsMessage.cs?view=diff&rev=493003&r1=493002&r2=493003
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/AbstractQmsMessage.cs
 (original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/AbstractQmsMessage.cs
 Fri Jan  5 04:11:56 2007
@@ -172,17 +172,40 @@
             }
         }
 
+        /// <summary>
+        /// Decodes the replyto field if one is set.
+        /// 
+        /// Splits a replyto field containing an exchange name followed by a 
':', followed by a routing key into the exchange name and
+        /// routing key seperately. The exchange name may be empty in which 
case the empty string is returned. If the exchange name is
+        /// empty the replyto field is expected to being with ':'.
+        /// 
+        /// Anyhting other than a two part replyto field sperated with a ':' 
will result in an exception.
+        /// </summary>
+        /// 
+        /// <returns>A destination initialized to the replyto location if a 
replyto field was set, or an empty destination otherwise.</returns>
         private Dest ReadReplyToHeader()
         {
             string replyToEncoding = ContentHeaderProperties.ReplyTo;
+
             if (replyToEncoding == null)
             {
                 return new Dest();
             }
             else
             {
-                string routingKey;
-                string exchangeName = GetExchangeName(replyToEncoding, out 
routingKey);
+                // Split the replyto field on a ':'
+                string[] split = replyToEncoding.Split(':');
+
+                // Ensure that the replyto field argument only consisted of 
two parts.
+                if (split.Length != 2)
+                {
+                    throw new QpidException("Illegal value in ReplyTo 
property: " + replyToEncoding);
+                }
+
+                // Extract the exchange name and routing key from the split 
replyto field.
+                string exchangeName = split[0];
+                string routingKey = split[1];
+
                 return new Dest(exchangeName, routingKey);                
             }            
         }
@@ -191,36 +214,6 @@
         {
             string encodedDestination = string.Format("{0}:{1}", 
dest.ExchangeName, dest.RoutingKey);
             ContentHeaderProperties.ReplyTo = encodedDestination;            
-        }
-
-        /// <summary>
-        /// Splits a replyto field containing an exchange name followed by a 
':', followed by a routing key into the exchange name and
-        /// routing key seperately. The exchange name may be empty in which 
case the empty string is returned. If the exchange name is
-        /// empty the replyto field is expected to being with ':'.
-        /// 
-        /// Anyhting other than a two part replyto field sperated with a ':' 
will result in an exception.
-        /// </summary>
-        /// 
-        /// <param name="replyToEncoding">The encoded replyto field to 
split.</param>
-        /// <param name="routingKey">A reference to update with the extracted 
routing key.</param>
-        /// 
-        /// <returns>The exchange name or the empty string when no exchange 
name is specified.</returns>
-        private static string GetExchangeName(string replyToEncoding, out 
string routingKey)
-        {
-            // Split the replyto field on a ':'
-            string[] split = replyToEncoding.Split(':');
-
-            // Ensure that the replyto field argument only consisted of two 
parts.
-            if (split.Length != 2)
-            {
-                throw new QpidException("Illegal value in ReplyTo property: " 
+ replyToEncoding);
-            }
-
-            // Extract the exchange name and routing key from the split 
replyto field.
-            string exchangeName = split[0];
-            routingKey = split[1];
-
-            return exchangeName;
         }
 
         public DeliveryMode DeliveryMode


Reply via email to