You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by js...@apache.org on 2006/10/03 12:28:43 UTC

svn commit: r452401 - in /incubator/activemq/activemq-dotnet/trunk: ./ src/main/csharp/ActiveMQ/ src/main/csharp/ActiveMQ/Commands/ src/main/csharp/ActiveMQ/Transport/ src/main/csharp/ActiveMQ/Transport/Tcp/ src/main/csharp/ActiveMQ/Util/ src/main/csha...

Author: jstrachan
Date: Tue Oct  3 03:28:40 2006
New Revision: 452401

URL: http://svn.apache.org/viewvc?view=rev&rev=452401
Log:
Applied patch from Rob Lugt to add URI configuration parameters for connection, consumer, producer for AMQ-947 - thanks Rob

Added:
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/URISupport.cs
Modified:
    incubator/activemq/activemq-dotnet/trunk/nant.build
    incubator/activemq/activemq-dotnet/trunk/pom.xml
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Commands/ActiveMQDestination.cs
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/ConnectionFactory.cs
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Session.cs
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/LoggingTransport.cs
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/Tcp/TcpTransportFactory.cs
    incubator/activemq/activemq-dotnet/trunk/src/main/csharp/NMS/CommonAssemblyInfo.cs
    incubator/activemq/activemq-dotnet/trunk/src/test/csharp/NMS/Test/CommonAssemblyInfo.cs
    incubator/activemq/activemq-dotnet/trunk/vs2005-activemq.csproj

Modified: incubator/activemq/activemq-dotnet/trunk/nant.build
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/nant.build?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/nant.build (original)
+++ incubator/activemq/activemq-dotnet/trunk/nant.build Tue Oct  3 03:28:40 2006
@@ -125,6 +125,10 @@
 
     <echo message="Building the nms library" />
 
+    <echo>Creating build dir ${build.bin.dir}</echo>
+    <mkdir dir="${build.bin.dir}"/>
+    
+
     <attrib file="src/main/csharp/NMS/CommonAssemblyInfo.cs" readonly="false" if="${file::exists('src/main/csharp/NMS/CommonAssemblyInfo.cs')}" />
     <asminfo output="src/main/csharp/NMS/CommonAssemblyInfo.cs" language="CSharp">
       <imports>
@@ -148,7 +152,6 @@
       </attributes>
     </asminfo>
 
-    
     <csc target="library" define="${current.build.defines}" warnaserror="false" debug="${build.debug}"
       output="${build.bin.dir}/nms.dll" doc="${build.bin.dir}/nms.xml">
       <nowarn>
@@ -411,6 +414,7 @@
 
   <target name="clean" depends="init" description="Deletes build">
     <delete dir="build" if="${directory::exists('build')}" />
+    <mkdir dir="build"/>
   </target>
 
   <target name="doc" depends="build-activemq">

Modified: incubator/activemq/activemq-dotnet/trunk/pom.xml
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/pom.xml?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/pom.xml (original)
+++ incubator/activemq/activemq-dotnet/trunk/pom.xml Tue Oct  3 03:28:40 2006
@@ -16,24 +16,36 @@
     limitations under the License.
 -->
 <project>
+  <!--
   <parent>
     <groupId>org.apache.activemq</groupId>
     <artifactId>activemq-parent</artifactId>
     <version>4.1-incubator-SNAPSHOT</version>
   </parent>
+  -->
+  <groupId>org.apache.activemq</groupId>
+  <version>4.1-incubator-SNAPSHOT</version>
 
   <modelVersion>4.0.0</modelVersion>
   <artifactId>activemq-dotnet</artifactId>
   <packaging>dotnet-library</packaging>
 
+
   <repositories>
     <repository>
-      <id>maven-csharp</id>
-      <name>maven-csharp</name>
-      <url>http://maven-csharp.javaforge.com/repo</url>
+      <id>project-repo</id>
+      <name>project repo</name>
+      <url>file:${basedir}/maven-repo</url>
+      <releases>
+        <enabled>true</enabled>
+      </releases>
+      <snapshots>
+        <enabled>true</enabled>
+      </snapshots>
     </repository>
   </repositories>
 
+
   <build>
 
     <outputDirectory>target/dotnet-assembly</outputDirectory>
@@ -44,6 +56,7 @@
     <plugins>
 
       <!-- Used to generate the openwire commands and marshallers -->
+      <!--
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-antrun-plugin</artifactId>
@@ -61,16 +74,15 @@
           </dependency>
         </dependencies>
       </plugin>
+      -->
 
       <!-- Manages the lifecycle of a dotnet project -->
-      <!--
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-csharp-lifecycle-plugin</artifactId>
-        <version>1.0.RC6-SNAPSHOT</version>
+        <version>1.0-SNAPSHOT</version>
         <extensions>true</extensions>
       </plugin>
-      -->
 
       <!-- Used to customize the dotnet compiler options -->
       <plugin>
@@ -140,17 +152,17 @@
       </plugin>
 
       <!-- For Running NUNIT tests -->
-      <!--
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-nunit-plugin</artifactId>
-        <version>1.0.RC6-SNAPSHOT</version>
+        <version>1.0-SNAPSHOT</version>
+
       </plugin>
 
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-vstudio-plugin</artifactId>
-        <version>1.0.RC6-SNAPSHOT</version>
+        <version>1.0-SNAPSHOT</version>
         <configuration>
           <frameworkHome>${dotnet.home}</frameworkHome>
           <includes>
@@ -160,7 +172,6 @@
           </includes>
         </configuration>
       </plugin>
-      -->
 
     </plugins>
   </build>
@@ -175,16 +186,42 @@
       <scope>system</scope>
       <systemPath>${dotnet.home}/System.dll</systemPath>
     </dependency -->
-    <!--
+
+    <dependency>
+      <groupId>nunit</groupId>
+      <artifactId>nunit-framework</artifactId>
+      <version>2.2</version>
+      <type>dotnet-library</type>
+      <scope>test</scope>
+    </dependency>
+
     <dependency>
       <groupId>nunit</groupId>
       <artifactId>nunit-console</artifactId>
       <version>2.2</version>
       <type>dotnet-exe</type>
+      <scope>system</scope>
+      <systemPath>${dotnet.home}/nunit-console.exe</systemPath>
+    </dependency>
+
+    <!--
+    <dependency>
+      <groupId>nunit</groupId>
+      <artifactId>nunit-console</artifactId>
+      <version>2.2.8</version>
+      <type>dotnet-exe</type>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>nunit</groupId>
+      <artifactId>nunit-console-runner</artifactId>
+      <version>2.2.8</version>
+      <type>dotnet-library</type>
       <scope>test</scope>
     </dependency>
     -->
   </dependencies>
+
 
   <properties>
     <activemq-core-dir>../activemq-trunk/activemq-core</activemq-core-dir>

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Commands/ActiveMQDestination.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Commands/ActiveMQDestination.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Commands/ActiveMQDestination.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Commands/ActiveMQDestination.cs Tue Oct  3 03:28:40 2006
@@ -16,6 +16,8 @@
  */
 using NMS;
 using System;
+using System.Collections.Specialized;
+
 namespace ActiveMQ.Commands
 {
     
@@ -73,7 +75,8 @@
         private const String COMPOSITE_SEPARATOR = ",";
         
         private String physicalName = "";
-        
+		private StringDictionary options = null;
+      
         // Cached transient data
         private bool exclusive;
         private bool ordered;
@@ -95,11 +98,32 @@
          */
         protected ActiveMQDestination(String name)
         {
-            this.physicalName = name;
+			setPhysicalName(name);
             this.advisory = name != null && name.StartsWith(ADVISORY_PREFIX);
         }
-        
-        
+
+		/// <summary>
+		/// Dictionary of name/value pairs representing option values specified
+		/// in the URI used to create this Destination.  A null value is returned
+		/// if no options were specified.
+		/// </summary>
+		internal StringDictionary Options
+		{
+			get { return this.options; }
+		}
+
+		private void setPhysicalName(string name)
+		{
+			this.physicalName = name;
+
+			int p = name.IndexOf('?');
+			if (p >= 0)
+			{
+				String optstring = physicalName.Substring(p + 1);
+				this.physicalName = name.Substring(0, p);
+				options = Util.URISupport.ParseQuery(optstring);
+			}
+		}
         
         /**
          * @return Returns the advisory.

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/ConnectionFactory.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/ConnectionFactory.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/ConnectionFactory.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/ConnectionFactory.cs Tue Oct  3 03:28:40 2006
@@ -17,6 +17,7 @@
 using ActiveMQ.Commands;
 using ActiveMQ.Transport;
 using ActiveMQ.Transport.Tcp;
+using ActiveMQ.Util;
 using NMS;
 using System;
 
@@ -49,10 +50,22 @@
         public IConnection CreateConnection(string userName, string password)
         {
             ConnectionInfo info = CreateConnectionInfo(userName, password);
-            ITransport transport = new TcpTransportFactory().CreateTransport(brokerUri);
+
+            // Extract query parameters from broker Uri
+            System.Collections.Specialized.StringDictionary map = URISupport.ParseQuery(brokerUri.Query);
+
+            TcpTransportFactory tcpTransportFactory = new TcpTransportFactory();
+            // Set properties on connection using parameters prefixed with "transport."
+            URISupport.SetProperties(tcpTransportFactory, map, "transport.");
+
+			ITransport transport = tcpTransportFactory.CreateTransport(brokerUri);
+
             Connection connection = new Connection(transport, info);
-            connection.ClientId = info.ClientId;
-            return connection;
+			connection.ClientId = info.ClientId;
+			// Set properties on connection using parameters prefixed with "jms."
+			URISupport.SetProperties(connection, map, "jms.");
+
+			return connection;
         }
         
         // Properties

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Session.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Session.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Session.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Session.cs Tue Oct  3 03:28:40 2006
@@ -317,7 +317,14 @@
             answer.Selector = selector;
             answer.PrefetchSize = prefetchSize;
             
-            // TODO configure other features on the consumer
+            // If the destination contained a URI query, then use it to set public properties
+            // on the ConsumerInfo
+            ActiveMQDestination amqDestination = destination as ActiveMQDestination;
+            if (amqDestination != null && amqDestination.Options != null)
+            {
+            	Util.URISupport.SetProperties(answer, amqDestination.Options, "consumer.");
+            }
+            
             return answer;
         }
         
@@ -333,6 +340,17 @@
             }
             answer.ProducerId = id;
             answer.Destination = ActiveMQDestination.Transform(destination);
+
+            answer.Destination = ActiveMQDestination.Transform(destination);
+
+            // If the destination contained a URI query, then use it to set public 
+            // properties on the ProducerInfo
+            ActiveMQDestination amqDestination = destination as ActiveMQDestination;
+            if (amqDestination != null && amqDestination.Options != null)
+            {
+            	Util.URISupport.SetProperties(answer, amqDestination.Options, "producer.");
+            }
+
             return answer;
         }
         

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/LoggingTransport.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/LoggingTransport.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/LoggingTransport.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/LoggingTransport.cs Tue Oct  3 03:28:40 2006
@@ -30,18 +30,18 @@
 		}
 		
 		protected override void OnCommand(ITransport sender, Command command) {
-			Console.WriteLine("RECEIVED: " + command);
+			System.Diagnostics.Trace.WriteLine("RECEIVED: " + command);
 			this.commandHandler(sender, command);
 		}
 		
 		protected override void OnException(ITransport sender, Exception error) {
-			Console.WriteLine("RECEIVED Exception: " + error);
+			System.Diagnostics.Trace.WriteLine("RECEIVED Exception: " + error);
 			this.exceptionHandler(sender, error);
 		}
 		
 		public override void Oneway(Command command)
 		{
-			Console.WriteLine("SENDING: " + command);
+			System.Diagnostics.Trace.WriteLine("SENDING: " + command);
 			this.next.Oneway(command);
 		}
 				

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/Tcp/TcpTransportFactory.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/Tcp/TcpTransportFactory.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/Tcp/TcpTransportFactory.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Transport/Tcp/TcpTransportFactory.cs Tue Oct  3 03:28:40 2006
@@ -26,25 +26,20 @@
     public class TcpTransportFactory : ITransportFactory {
         private bool useLogging = false;
 
-        public bool UseLogging {
+        public bool UseLogging 
+		{
             get { return useLogging; } 
             set { useLogging = value; } 
         }
 
-        public ITransport CreateTransport(Uri location) {
-
+        public ITransport CreateTransport(Uri location) 
+		{
             // Console.WriteLine("Opening socket to: " + host + " on port: " + port);
             Socket socket = Connect(location.Host, location.Port);
             ITransport rc = new TcpTransport(socket);
-            
-            // TODO use URI query string to configure properties on this object
-            
-            // TODO - dirty hack - replace with better URI query parsing later
-            if (location.Query.IndexOf("logging=true") >= 0) {
-                UseLogging = true;
-            }
-            
-            if (UseLogging) {
+
+			// At present the URI is parsed for options by the ConnectionFactory
+			if (UseLogging) {
                 rc = new LoggingTransport(rc);
             }
             rc = new ResponseCorrelator(rc);

Added: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/URISupport.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/URISupport.cs?view=auto&rev=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/URISupport.cs (added)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/ActiveMQ/Util/URISupport.cs Tue Oct  3 03:28:40 2006
@@ -0,0 +1,93 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+using System;
+using System.Collections.Specialized;
+using System.Text;
+
+namespace ActiveMQ.Util
+{
+	/// <summary>
+	/// Class to provide support for URI query parameters which uses .Net reflection
+	/// to identify and set properties.
+	/// </summary>
+	internal class URISupport
+	{
+		/// <summary>
+		/// Parse a URI query string of the form ?x=y&z=0
+		/// into a map of name/value pairs.
+		/// </summary>
+		/// <param name="query">The query string to parse. This string should not contain
+		/// URI escape characters.</param>
+		public static StringDictionary ParseQuery(string query)
+		{
+			StringDictionary map = new StringDictionary();
+
+			// strip the initial "?"
+			if(query.StartsWith("?"))
+				query = query.Substring(1);
+			// split the query into parameters
+			string[] parameters = query.Split('&');
+			foreach (string pair in parameters)
+			{
+				if (pair.Length > 0)
+				{
+					string[] nameValue = pair.Split('=');
+					if (nameValue.Length != 2)
+					{
+						throw new NMS.NMSException("Invalid URI parameter: " + query);
+					}
+					else
+					{
+						map[nameValue[0]] = nameValue[1];
+					}
+				}
+			}
+			return map;
+		}
+
+		/// <summary>
+		/// Sets the public properties of a target object using a string map.
+		/// This method uses .Net reflection to identify public properties of
+		/// the target object matching the keys from the passed map.
+		/// </summary>
+		/// <param name="target">The object whose properties will be set.</param>
+		/// <param name="map">Map of key/value pairs.</param>
+		/// <param name="prefix">Key value prefix.  This is prepended to the property name
+		/// before searching for a matching key value.</param>
+		public static void SetProperties(object target, StringDictionary map, string prefix)
+		{
+			Type type = target.GetType();
+			foreach(string key in map.Keys)
+			{
+				if(key.StartsWith(prefix))
+				{
+					string bareKey = key.Substring(prefix.Length);
+					System.Reflection.PropertyInfo prop = type.GetProperty(bareKey, System.Reflection.BindingFlags.FlattenHierarchy | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.IgnoreCase);
+					if (prop != null)
+					{
+						prop.SetValue(target, Convert.ChangeType(map[key], prop.PropertyType), null);
+					}
+					else
+					{ 
+						throw new NMS.NMSException(string.Format("no such property: {0} on class: {1}", bareKey, target.GetType().Name));
+					}
+				}
+			}
+		}
+	}
+}
+

Modified: incubator/activemq/activemq-dotnet/trunk/src/main/csharp/NMS/CommonAssemblyInfo.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/main/csharp/NMS/CommonAssemblyInfo.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/main/csharp/NMS/CommonAssemblyInfo.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/main/csharp/NMS/CommonAssemblyInfo.cs Tue Oct  3 03:28:40 2006
@@ -1,11 +1,11 @@
-using System;
+using System;
 using System.Reflection;
 using System.Runtime.InteropServices;
 
 // ------------------------------------------------------------------------------
 //  <autogenerated>
 //      This code was generated by a tool.
-//      Mono Runtime Version: 2.0.50727.42
+//      Mono Runtime Version: 1.1.4322.2032
 // 
 //      Changes to this file may cause incorrect behavior and will be lost if 
 //      the code is regenerated.

Modified: incubator/activemq/activemq-dotnet/trunk/src/test/csharp/NMS/Test/CommonAssemblyInfo.cs
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/src/test/csharp/NMS/Test/CommonAssemblyInfo.cs?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/src/test/csharp/NMS/Test/CommonAssemblyInfo.cs (original)
+++ incubator/activemq/activemq-dotnet/trunk/src/test/csharp/NMS/Test/CommonAssemblyInfo.cs Tue Oct  3 03:28:40 2006
@@ -1,11 +1,11 @@
-using System;
+using System;
 using System.Reflection;
 using System.Runtime.InteropServices;
 
 // ------------------------------------------------------------------------------
 //  <autogenerated>
 //      This code was generated by a tool.
-//      Mono Runtime Version: 2.0.50727.42
+//      Mono Runtime Version: 1.1.4322.2032
 // 
 //      Changes to this file may cause incorrect behavior and will be lost if 
 //      the code is regenerated.

Modified: incubator/activemq/activemq-dotnet/trunk/vs2005-activemq.csproj
URL: http://svn.apache.org/viewvc/incubator/activemq/activemq-dotnet/trunk/vs2005-activemq.csproj?view=diff&rev=452401&r1=452400&r2=452401
==============================================================================
--- incubator/activemq/activemq-dotnet/trunk/vs2005-activemq.csproj (original)
+++ incubator/activemq/activemq-dotnet/trunk/vs2005-activemq.csproj Tue Oct  3 03:28:40 2006
@@ -1,702 +1,706 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>8.0.50727</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{08321F42-4B3D-4815-B592-95962BAC3B9F}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>ActiveMQ</RootNamespace>
-    <AssemblyName>activemq</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>activemq-dotnet.snk</AssemblyOriginatorKeyFile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>false</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="activemq-dotnet.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\ActiveMQ\BrokerException.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQBytesMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQDestination.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQMapMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQObjectMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQQueue.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQStreamMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempDestination.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempQueue.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempTopic.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTextMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTopic.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BaseCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BaseDataStructure.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BooleanExpression.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerError.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\Command.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionControl.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionError.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerControl.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ControlCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataArrayResponse.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataResponse.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataStructure.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataStructureSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DestinationInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\DiscoveryEvent.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ExceptionResponse.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\FlushCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\IntegerResponse.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalQueueAck.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTopicAck.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTrace.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTransaction.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\KeepAliveInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\LastPartialCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\LocalTransactionId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MarshallAware.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\Message.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageAck.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageDispatch.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageDispatchNotification.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessagePull.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageReference.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\NetworkBridgeFilter.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\PartialCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ProducerId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ProducerInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\RemoveInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\RemoveSubscriptionInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ReplayCommand.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\Response.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\SessionId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\SessionInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\ShutdownInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\SubscriptionInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\TransactionId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\TransactionInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\WireFormatInfo.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\XATransactionId.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Commands\Xid.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\CommonAssemblyInfo.cs" />
-    <Compile Include="src\main\csharp\ActiveMQ\Connection.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\ConnectionClosedException.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\ConnectionFactory.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\ConsumerClosedException.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\DestinationFilter.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Dispatcher.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\ISynchronization.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\MessageConsumer.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\MessageProducer.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\BaseDataStreamMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\BooleanStream.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\EndianSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\MessagePropertyHelper.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireBinaryReader.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireBinaryWriter.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireFormat.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\PrimitiveMap.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQBytesMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQDestinationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQMapMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQObjectMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQQueueMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQStreamMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempDestinationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempQueueMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempTopicMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTextMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTopicMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BaseCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BrokerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BrokerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionControlMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionErrorMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerControlMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ControlCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataArrayResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataStructureSupportMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DestinationInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DiscoveryEventMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ExceptionResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\FlushCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\IntegerResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalQueueAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTopicAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTraceMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTransactionMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\KeepAliveInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\LastPartialCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\LocalTransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MarshallerFactory.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageDispatchMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageDispatchNotificationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\NetworkBridgeFilterMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\PartialCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ProducerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ProducerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\RemoveInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\RemoveSubscriptionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ReplayCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SessionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SessionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ShutdownInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SubscriptionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\TransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\TransactionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\WireFormatInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\XATransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQBytesMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQDestinationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQMapMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQObjectMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQQueueMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQStreamMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempDestinationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempQueueMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempTopicMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTextMessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTopicMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BaseCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BrokerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BrokerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionControlMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionErrorMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerControlMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ControlCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DataArrayResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DataResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DestinationInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DiscoveryEventMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ExceptionResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\FlushCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\IntegerResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalQueueAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTopicAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTraceMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTransactionMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\KeepAliveInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\LastPartialCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\LocalTransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MarshallerFactory.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageAckMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageDispatchMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageDispatchNotificationMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessagePullMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\NetworkBridgeFilterMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\PartialCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ProducerIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ProducerInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\RemoveInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\RemoveSubscriptionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ReplayCommandMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ResponseMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SessionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SessionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ShutdownInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SubscriptionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\TransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\TransactionInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\WireFormatInfoMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\XATransactionIdMarshaller.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Session.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\TransactionContext.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\FutureResponse.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\ITransport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\ITransportFactory.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\LoggingTransport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\MutexTransport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\ResponseCorrelator.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\Tcp\TcpTransport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\Tcp\TcpTransportFactory.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\TransportFilter.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\ActiveMQ\Transport\WireFormatNegotiator.cs">
-      <SubType>Code</SubType>
-    </Compile>
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="vs2005-nms.csproj">
-      <Project>{300C1716-0674-4D01-8F5D-151E59A504FE}</Project>
-      <Name>vs2005-nms</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.50727</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{08321F42-4B3D-4815-B592-95962BAC3B9F}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>ActiveMQ</RootNamespace>
+    <AssemblyName>activemq</AssemblyName>
+    <WarningLevel>4</WarningLevel>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>activemq-dotnet.snk</AssemblyOriginatorKeyFile>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugSymbols>false</DebugSymbols>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="activemq-dotnet.snk" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="src\main\csharp\ActiveMQ\BrokerException.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQBytesMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQDestination.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQMapMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQObjectMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQQueue.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQStreamMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempDestination.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempQueue.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTempTopic.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTextMessage.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ActiveMQTopic.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BaseCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BaseDataStructure.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BooleanExpression.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerError.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\BrokerInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\Command.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionControl.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionError.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConnectionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerControl.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ConsumerInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ControlCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataArrayResponse.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataResponse.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataStructure.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DataStructureSupport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DestinationInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\DiscoveryEvent.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ExceptionResponse.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\FlushCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\IntegerResponse.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalQueueAck.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTopicAck.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTrace.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\JournalTransaction.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\KeepAliveInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\LastPartialCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\LocalTransactionId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MarshallAware.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\Message.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageAck.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageDispatch.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageDispatchNotification.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessagePull.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\MessageReference.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\NetworkBridgeFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\PartialCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ProducerId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ProducerInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\RemoveInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\RemoveSubscriptionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ReplayCommand.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\Response.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\SessionId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\SessionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\ShutdownInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\SubscriptionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\TransactionId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\TransactionInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\WireFormatInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\XATransactionId.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Commands\Xid.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\CommonAssemblyInfo.cs" />
+    <Compile Include="src\main\csharp\ActiveMQ\Connection.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\ConnectionClosedException.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\ConnectionFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\ConsumerClosedException.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\DestinationFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Dispatcher.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\ISynchronization.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\MessageConsumer.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\MessageProducer.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\BaseDataStreamMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\BooleanStream.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\EndianSupport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\MessagePropertyHelper.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireBinaryReader.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireBinaryWriter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\OpenWireFormat.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\PrimitiveMap.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQBytesMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQDestinationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQMapMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQObjectMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQQueueMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQStreamMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempDestinationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempQueueMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTempTopicMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTextMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ActiveMQTopicMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BaseCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BrokerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\BrokerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionControlMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionErrorMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConnectionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerControlMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ConsumerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ControlCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataArrayResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DataStructureSupportMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DestinationInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\DiscoveryEventMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ExceptionResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\FlushCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\IntegerResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalQueueAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTopicAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTraceMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\JournalTransactionMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\KeepAliveInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\LastPartialCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\LocalTransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MarshallerFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageDispatchMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageDispatchNotificationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\MessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\NetworkBridgeFilterMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\PartialCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ProducerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ProducerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\RemoveInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\RemoveSubscriptionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ReplayCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SessionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SessionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\ShutdownInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\SubscriptionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\TransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\TransactionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\WireFormatInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V1\XATransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQBytesMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQDestinationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQMapMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQObjectMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQQueueMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQStreamMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempDestinationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempQueueMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTempTopicMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTextMessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ActiveMQTopicMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BaseCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BrokerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\BrokerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionControlMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionErrorMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConnectionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerControlMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ConsumerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ControlCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DataArrayResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DataResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DestinationInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\DiscoveryEventMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ExceptionResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\FlushCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\IntegerResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalQueueAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTopicAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTraceMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\JournalTransactionMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\KeepAliveInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\LastPartialCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\LocalTransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MarshallerFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageAckMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageDispatchMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageDispatchNotificationMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessageMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\MessagePullMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\NetworkBridgeFilterMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\PartialCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ProducerIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ProducerInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\RemoveInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\RemoveSubscriptionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ReplayCommandMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ResponseMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SessionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SessionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\ShutdownInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\SubscriptionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\TransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\TransactionInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\WireFormatInfoMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\OpenWire\V2\XATransactionIdMarshaller.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Session.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\TransactionContext.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\FutureResponse.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\ITransport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\ITransportFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\LoggingTransport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\MutexTransport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\ResponseCorrelator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\Tcp\TcpTransport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\Tcp\TcpTransportFactory.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\TransportFilter.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Transport\WireFormatNegotiator.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="src\main\csharp\ActiveMQ\Util\URISupport.cs">
+      <SubType>Code</SubType>
+    </Compile>
+
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="vs2005-nms.csproj">
+      <Project>{300C1716-0674-4D01-8F5D-151E59A504FE}</Project>
+      <Name>vs2005-nms</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
 </Project>