You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by mi...@apache.org on 2019/06/24 13:56:07 UTC

[activemq-nms-api] branch master updated: AMQNET-588 Solution clean up

This is an automated email from the ASF dual-hosted git repository.

michaelpearce pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/activemq-nms-api.git


The following commit(s) were added to refs/heads/master by this push:
     new 04ff7f6  AMQNET-588  Solution clean up
     new 61e9090  Merge pull request #6 from HavretGC/solution_clean_up
04ff7f6 is described below

commit 04ff7f68a8724d58d9597c538b3c018098f63103
Author: Krzysztof Porebski <Kr...@GAINCapital.com>
AuthorDate: Mon Jun 24 12:01:26 2019 +0200

    AMQNET-588  Solution clean up
    
    - Reorganize repository structure
    - Remove redundant .csproj files leaving only one csproj per actual project
    - Update package scripts
    - Replace sandcastle with docFX
---
 .gitignore                                         |   22 +-
 LICENSE.txt                                        | 1528 ++++++++++----------
 NOTICE.txt                                         |   24 +-
 README.txt                                         |  108 +-
 Resources/AboutResources.txt                       |   50 -
 Resources/Resource.Designer.cs                     |   60 -
 Resources/Values/Strings.xml                       |    5 -
 docs/.gitignore                                    |   10 +
 docs/api/.gitignore                                |    5 +
 docs/api/index.md                                  |    2 +
 docs/articles/intro.md                             |    1 +
 docs/articles/toc.yml                              |    2 +
 docs/docfx.json                                    |   75 +
 docs/images/activemq_logo_icon.png                 |  Bin 0 -> 37357 bytes
 docs/index.md                                      |    4 +
 docs/nms-docs.csproj                               |   33 +
 docs/template/partials/logo.tmpl.partial           |   24 +
 docs/toc.yml                                       |    3 +
 nant-common.xml                                    |  658 ---------
 nant.build                                         |  119 --
 nms.sln                                            |   37 +
 package.ps1                                        |   59 +-
 src/main/ndoc/NamespaceSummary.xml                 |   21 -
 src/main/sandcastle/feedback_content.xml           |   32 -
 src/{main/csharp => nms-api}/IBytesMessage.cs      |    0
 src/{main/csharp => nms-api}/IConnection.cs        |    0
 src/{main/csharp => nms-api}/IConnectionFactory.cs |    0
 .../csharp => nms-api}/IConnectionMetaData.cs      |    0
 src/{main/csharp => nms-api}/IDestination.cs       |    0
 src/{main/csharp => nms-api}/IMapMessage.cs        |    0
 src/{main/csharp => nms-api}/IMessage.cs           |    0
 src/{main/csharp => nms-api}/IMessageConsumer.cs   |    0
 src/{main/csharp => nms-api}/IMessageProducer.cs   |    0
 src/{main/csharp => nms-api}/INetTxConnection.cs   |    0
 .../csharp => nms-api}/INetTxConnectionFactory.cs  |    0
 src/{main/csharp => nms-api}/INetTxSession.cs      |    0
 src/{main/csharp => nms-api}/IObjectMessage.cs     |    0
 src/{main/csharp => nms-api}/IPrimitiveMap.cs      |    0
 src/{main/csharp => nms-api}/IQueue.cs             |    0
 src/{main/csharp => nms-api}/IQueueBrowser.cs      |    0
 src/{main/csharp => nms-api}/IRedeliveryPolicy.cs  |    0
 src/{main/csharp => nms-api}/ISession.cs           |    0
 src/{main/csharp => nms-api}/IStartable.cs         |    0
 src/{main/csharp => nms-api}/IStoppable.cs         |    0
 src/{main/csharp => nms-api}/IStreamMessage.cs     |    0
 src/{main/csharp => nms-api}/ITemporaryQueue.cs    |    0
 src/{main/csharp => nms-api}/ITemporaryTopic.cs    |    0
 src/{main/csharp => nms-api}/ITextMessage.cs       |    0
 src/{main/csharp => nms-api}/ITopic.cs             |    0
 src/{main/csharp => nms-api}/ITrace.cs             |    0
 .../csharp => nms-api}/IllegalStateException.cs    |    0
 .../csharp => nms-api}/InvalidClientIDException.cs |    0
 .../InvalidDestinationException.cs                 |    0
 .../csharp => nms-api}/InvalidSelectorException.cs |    0
 .../MessageConsumerExtensions.cs                   |    0
 .../csharp => nms-api}/MessageEOFException.cs      |    0
 src/{main/csharp => nms-api}/MessageExtensions.cs  |    0
 .../csharp => nms-api}/MessageFormatException.cs   |    0
 .../MessageNotReadableException.cs                 |    0
 .../MessageNotWriteableException.cs                |    0
 .../MessageProducerExtensions.cs                   |    0
 .../csharp => nms-api}/NMSConnectionException.cs   |    0
 .../csharp => nms-api}/NMSConnectionFactory.cs     |    0
 src/{main/csharp => nms-api}/NMSConstants.cs       |    0
 src/{main/csharp => nms-api}/NMSException.cs       |    0
 .../csharp => nms-api}/NMSSecurityException.cs     |    0
 .../ResourceAllocationException.cs                 |    0
 src/{main/csharp => nms-api}/SessionExtensions.cs  |    0
 src/{main/csharp => nms-api}/Tracer.cs             |    0
 .../TransactionInProgressException.cs              |    0
 .../TransactionRolledBackException.cs              |    0
 src/{main/csharp => nms-api}/Util/Atomic.cs        |    0
 src/{main/csharp => nms-api}/Util/Convert.cs       |    0
 .../csharp => nms-api}/Util/CountDownLatch.cs      |    0
 src/{main/csharp => nms-api}/Util/DateUtils.cs     |    0
 .../csharp => nms-api}/Util/EndianBinaryReader.cs  |    0
 .../csharp => nms-api}/Util/EndianBinaryWriter.cs  |    0
 src/{main/csharp => nms-api}/Util/EndianSupport.cs |    0
 .../Util/MessagePropertyIntercepter.cs             |    0
 .../Util/MessageTransformation.cs                  |    0
 .../csharp => nms-api}/Util/NMSExceptionSupport.cs |    0
 src/{main/csharp => nms-api}/Util/PrimitiveMap.cs  |    0
 .../Util/PrimitiveMapInterceptor.cs                |    0
 src/{main/csharp => nms-api}/Util/SessionUtils.cs  |    0
 src/{main/csharp => nms-api}/Util/URISupport.cs    |    0
 src/{main/csharp => nms-api}/Util/XmlUtils.cs      |    0
 src/nms-api/nms-api.csproj                         |   63 +
 .../policies/RedeliveryPolicy.cs                   |    0
 .../nms-api-test}/AsyncConsumeTest.cs              |    0
 .../csharp => test/nms-api-test}/BadConsumeTest.cs |    0
 .../nms-api-test}/BytesMessageTest.cs              |    0
 .../nms-api-test}/Commands/BytesMessage.cs         |    0
 .../nms-api-test}/Commands/Destination.cs          |    0
 .../nms-api-test}/Commands/MapMessage.cs           |    0
 .../nms-api-test}/Commands/Message.cs              |    0
 .../nms-api-test}/Commands/ObjectMessage.cs        |    0
 .../csharp => test/nms-api-test}/Commands/Queue.cs |    0
 .../nms-api-test}/Commands/StreamMessage.cs        |    0
 .../nms-api-test}/Commands/TempDestination.cs      |    0
 .../nms-api-test}/Commands/TempQueue.cs            |    0
 .../nms-api-test}/Commands/TempTopic.cs            |    0
 .../nms-api-test}/Commands/TextMessage.cs          |    0
 .../csharp => test/nms-api-test}/Commands/Topic.cs |    0
 .../csharp => test/nms-api-test}/ConnectionTest.cs |    0
 .../csharp => test/nms-api-test}/ConsumerTest.cs   |    0
 .../csharp => test/nms-api-test}/DurableTest.cs    |    0
 .../nms-api-test}/EndianBinaryReaderTest.cs        |    0
 .../nms-api-test}/EndianBinaryWriterTest.cs        |    0
 .../csharp => test/nms-api-test}/EndianTest.cs     |    0
 .../ForgeinMessageTransformationTest.cs            |    0
 .../csharp => test/nms-api-test}/MapMessageTest.cs |    0
 .../nms-api-test}/MessageSelectorTest.cs           |    0
 .../csharp => test/nms-api-test}/MessageTest.cs    |    0
 .../nms-api-test}/MessageTransformerTest.cs        |    0
 .../nms-api-test}/NMSPropertyTest.cs               |    0
 .../csharp => test/nms-api-test}/NMSTestSupport.cs |    0
 .../test/csharp => test/nms-api-test}/NmsTracer.cs |    0
 .../nms-api-test}/PrimitiveMapTest.cs              |    0
 .../csharp => test/nms-api-test}/ProducerTest.cs   |    0
 .../nms-api-test}/RedeliveryPolicyTest.cs          |    0
 .../nms-api-test}/RequestResponseTest.cs           |    0
 .../nms-api-test}/StreamMessageTest.cs             |    0
 .../nms-api-test}/TempDestinationDeletionTest.cs   |    0
 .../nms-api-test}/TempDestinationTest.cs           |    0
 .../csharp => test/nms-api-test}/TextMessage.cs    |    0
 .../nms-api-test}/TransactionTest.cs               |    0
 .../csharp => test/nms-api-test}/URISupportTest.cs |    0
 .../csharp => test/nms-api-test}/XmlMessageTest.cs |    0
 test/nms-api-test/nms-api-test.csproj              |   69 +
 vs2008-nms-test.csproj                             |  163 ---
 vs2008-nms.csproj                                  |  135 --
 vs2008-nms.sln                                     |   30 -
 vs2010-nms-net2.0.csproj                           |  193 ---
 vs2010-nms-net3.5.csproj                           |  184 ---
 vs2010-nms-net4.0.csproj                           |  184 ---
 vs2010-nms-test-net2.0.csproj                      |  199 ---
 vs2010-nms-test-net3.5.csproj                      |  201 ---
 vs2010-nms-test-net4.0.csproj                      |  201 ---
 vs2010-nms.sln                                     |   54 -
 vs2013-nms-android.csproj                          |  139 --
 vs2013-nms.sln                                     |   22 -
 vs2019-nms-api-test.csproj                         |   60 -
 vs2019-nms-api.csproj                              |   52 -
 vs2019-nms.sln                                     |   34 -
 144 files changed, 1189 insertions(+), 3676 deletions(-)

diff --git a/.gitignore b/.gitignore
index d6395d3..a49d2c9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,13 @@
-
-.vs/
-
-bin/
-obj/
-build/
-.idea/
-*.csproj.user
-
+
+.vs/
+
+bin/
+obj/
+build/
+.idea/
+*.csproj.user
+nms.sln.startup.json
+build/
+package/
+nms.sln.DotSettings.user
+tools/
diff --git a/LICENSE.txt b/LICENSE.txt
index e52ce5d..6f22588 100755
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,764 +1,764 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed 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.
-
-APACHE ACTIVEMQ DEPENDENCIES:
-
-The Apache ActiveMQ message broker includes a number of dependencies, many 
-of them optional, with separate copyright notices and license terms. Your 
-use of the source code for the these subcomponents is subject to the terms 
-and conditions of the following licenses. 
-
-For the backport-util-concurrent library:
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
-<html><head><title>Creative Commons Public Domain</title>
-
-<body>
-
-<p align="center"><em>Copyright-Only Dedication (based on United States law) or Public Domain Certification</em></p>
-
-        <p>The
-person or persons who have associated work with this document (the
-"Dedicator" or "Certifier") hereby either (a) certifies that, to the
-best of his knowledge, the work of authorship identified is in the
-public domain of the country from which the work is published, or (b)
-hereby dedicates whatever copyright the dedicators holds in the work of
-authorship identified below (the "Work") to the public domain. A
-certifier, morever, dedicates any copyright interest he may have in the
-associated work, and for these purposes, is described as a "dedicator"
-below.</p>
-
-        <p>A certifier has taken reasonable steps to verify
-the copyright status of this work. Certifier recognizes that his good
-faith efforts may not shield him from liability if in fact the work
-certified is not in the public domain.</p>
-
-        <p>Dedicator makes
-this dedication for the benefit of the public at large and to the
-detriment of the Dedicator's heirs and successors. Dedicator intends
-this dedication to be an overt act of relinquishment in perpetuity of
-all present and future rights under copyright law, whether vested or
-contingent, in the Work. Dedicator understands that such relinquishment
-of all rights includes the relinquishment of all rights to enforce (by
-lawsuit or otherwise) those copyrights in the Work.</p>
-
-        <p>Dedicator
-recognizes that, once placed in the public domain, the Work may be
-freely reproduced, distributed, transmitted, used, modified, built
-upon, or otherwise exploited by anyone for any purpose, commercial or
-non-commercial, and in any way, including by methods that have not yet
-been invented or conceived.</p>
-    </div>
-</div>
-</body></html>
-
-For the mx4j, mx4j-remote, and mx4j-tools library:
-
-         The MX4J License, Version 1.0
-
-         Copyright (c) 2001-2004 by the MX4J contributors.  All rights reserved.
-
-         Redistribution and use in source and binary forms, with or without
-         modification, are permitted provided that the following conditions
-         are met:
-
-         1. Redistributions of source code must retain the above copyright
-            notice, this list of conditions and the following disclaimer.
-
-         2. Redistributions in binary form must reproduce the above copyright
-            notice, this list of conditions and the following disclaimer in
-            the documentation and/or other materials provided with the
-            distribution.
-
-         3. The end-user documentation included with the redistribution,
-            if any, must include the following acknowledgment:
-               "This product includes software developed by the
-                MX4J project (http://mx4j.sourceforge.net)."
-            Alternately, this acknowledgment may appear in the software itself,
-            if and wherever such third-party acknowledgments normally appear.
-
-         4. The name "MX4J" must not be used to endorse or promote
-            products derived from this software without prior written
-            permission.
-            For written permission, please contact
-            biorn_steedom [at] users [dot] sourceforge [dot] net
-
-         5. Products derived from this software may not be called "MX4J",
-            nor may "MX4J" appear in their name, without prior written
-            permission of Simone Bordet.
-
-         THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-         WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-         OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-         DISCLAIMED.  IN NO EVENT SHALL THE MX4J CONTRIBUTORS
-         BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-         SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-         LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-         USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-         ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-         OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-         OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-         SUCH DAMAGE.
-         ====================================================================
-
-         This software consists of voluntary contributions made by many
-         individuals on behalf of the MX4J project.  For more information on
-         MX4J, please see
-         <a href="http://mx4j.sourceforge.net" target="_top">the MX4J website</a>.
-
-For the jetty and jetty-util library:
-
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed 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.
-
-For the xmlpull library:
-
-XMLPULL API IS FREE
--------------------
-
-All of the XMLPULL API source code, compiled code, and documentation 
-contained in this distribution *except* for tests (see separate LICENSE_TESTS.txt)
-are in the Public Domain.
-
-XMLPULL API comes with NO WARRANTY or guarantee of fitness for any purpose.
-
-Initial authors:
-
-  Stefan Haustein
-  Aleksander Slominski
-
-2001-12-12
-
-For the spring library:
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed 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.
-
-For the xstream library:
-
-(BSD Style License)
-
-Copyright (c) 2003-2004, Joe Walnes
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this list of
-conditions and the following disclaimer. Redistributions in binary form must reproduce
-the above copyright notice, this list of conditions and the following disclaimer in
-the documentation and/or other materials provided with the distribution.
-
-Neither the name of XStream nor the names of its contributors may be used to endorse
-or promote products derived from this software without specific prior written
-permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
-EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
-SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
-WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGE.
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
+
+APACHE ACTIVEMQ DEPENDENCIES:
+
+The Apache ActiveMQ message broker includes a number of dependencies, many 
+of them optional, with separate copyright notices and license terms. Your 
+use of the source code for the these subcomponents is subject to the terms 
+and conditions of the following licenses. 
+
+For the backport-util-concurrent library:
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
+<html><head><title>Creative Commons Public Domain</title>
+
+<body>
+
+<p align="center"><em>Copyright-Only Dedication (based on United States law) or Public Domain Certification</em></p>
+
+        <p>The
+person or persons who have associated work with this document (the
+"Dedicator" or "Certifier") hereby either (a) certifies that, to the
+best of his knowledge, the work of authorship identified is in the
+public domain of the country from which the work is published, or (b)
+hereby dedicates whatever copyright the dedicators holds in the work of
+authorship identified below (the "Work") to the public domain. A
+certifier, morever, dedicates any copyright interest he may have in the
+associated work, and for these purposes, is described as a "dedicator"
+below.</p>
+
+        <p>A certifier has taken reasonable steps to verify
+the copyright status of this work. Certifier recognizes that his good
+faith efforts may not shield him from liability if in fact the work
+certified is not in the public domain.</p>
+
+        <p>Dedicator makes
+this dedication for the benefit of the public at large and to the
+detriment of the Dedicator's heirs and successors. Dedicator intends
+this dedication to be an overt act of relinquishment in perpetuity of
+all present and future rights under copyright law, whether vested or
+contingent, in the Work. Dedicator understands that such relinquishment
+of all rights includes the relinquishment of all rights to enforce (by
+lawsuit or otherwise) those copyrights in the Work.</p>
+
+        <p>Dedicator
+recognizes that, once placed in the public domain, the Work may be
+freely reproduced, distributed, transmitted, used, modified, built
+upon, or otherwise exploited by anyone for any purpose, commercial or
+non-commercial, and in any way, including by methods that have not yet
+been invented or conceived.</p>
+    </div>
+</div>
+</body></html>
+
+For the mx4j, mx4j-remote, and mx4j-tools library:
+
+         The MX4J License, Version 1.0
+
+         Copyright (c) 2001-2004 by the MX4J contributors.  All rights reserved.
+
+         Redistribution and use in source and binary forms, with or without
+         modification, are permitted provided that the following conditions
+         are met:
+
+         1. Redistributions of source code must retain the above copyright
+            notice, this list of conditions and the following disclaimer.
+
+         2. Redistributions in binary form must reproduce the above copyright
+            notice, this list of conditions and the following disclaimer in
+            the documentation and/or other materials provided with the
+            distribution.
+
+         3. The end-user documentation included with the redistribution,
+            if any, must include the following acknowledgment:
+               "This product includes software developed by the
+                MX4J project (http://mx4j.sourceforge.net)."
+            Alternately, this acknowledgment may appear in the software itself,
+            if and wherever such third-party acknowledgments normally appear.
+
+         4. The name "MX4J" must not be used to endorse or promote
+            products derived from this software without prior written
+            permission.
+            For written permission, please contact
+            biorn_steedom [at] users [dot] sourceforge [dot] net
+
+         5. Products derived from this software may not be called "MX4J",
+            nor may "MX4J" appear in their name, without prior written
+            permission of Simone Bordet.
+
+         THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+         WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+         OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+         DISCLAIMED.  IN NO EVENT SHALL THE MX4J CONTRIBUTORS
+         BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+         SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+         LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+         USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+         ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+         OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+         OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+         SUCH DAMAGE.
+         ====================================================================
+
+         This software consists of voluntary contributions made by many
+         individuals on behalf of the MX4J project.  For more information on
+         MX4J, please see
+         <a href="http://mx4j.sourceforge.net" target="_top">the MX4J website</a>.
+
+For the jetty and jetty-util library:
+
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
+
+For the xmlpull library:
+
+XMLPULL API IS FREE
+-------------------
+
+All of the XMLPULL API source code, compiled code, and documentation 
+contained in this distribution *except* for tests (see separate LICENSE_TESTS.txt)
+are in the Public Domain.
+
+XMLPULL API comes with NO WARRANTY or guarantee of fitness for any purpose.
+
+Initial authors:
+
+  Stefan Haustein
+  Aleksander Slominski
+
+2001-12-12
+
+For the spring library:
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
+
+For the xstream library:
+
+(BSD Style License)
+
+Copyright (c) 2003-2004, Joe Walnes
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of
+conditions and the following disclaimer. Redistributions in binary form must reproduce
+the above copyright notice, this list of conditions and the following disclaimer in
+the documentation and/or other materials provided with the distribution.
+
+Neither the name of XStream nor the names of its contributors may be used to endorse
+or promote products derived from this software without specific prior written
+permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
+WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGE.
diff --git a/NOTICE.txt b/NOTICE.txt
index 1c50c18..ac4b164 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,12 +1,12 @@
-=========================================================================
-==  NOTICE file corresponding to the section 4 d of                    ==
-==  the Apache License, Version 2.0,                                   ==
-==  in this case for the Apache ActiveMQ distribution.                 ==
-=========================================================================
-
-Apache ActiveMQ
-Copyright 2005-2017 The Apache Software Foundation
-
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
+=========================================================================
+==  NOTICE file corresponding to the section 4 d of                    ==
+==  the Apache License, Version 2.0,                                   ==
+==  in this case for the Apache ActiveMQ distribution.                 ==
+=========================================================================
+
+Apache ActiveMQ
+Copyright 2005-2017 The Apache Software Foundation
+
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).
+
diff --git a/README.txt b/README.txt
index e608484..27aa5ca 100644
--- a/README.txt
+++ b/README.txt
@@ -1,54 +1,54 @@
-=======================================================================
-Welcome to:
- * Apache.NMS : The .NET Messaging Service Client API
-=======================================================================
-
-For more information see http://activemq.apache.org/nms
-
-=======================================================================
-Building With NAnt 0.86 see http://nant.sourceforge.net/
-=======================================================================
-
-NAnt version 0.86 or newer is required to build Apache.NMS.  Version 0.90
-or newer is highly recommended.
-To build the code using NAnt, run:
-
-  nant
-
-The NMS documentation can be generated into three different formats using
-Microsoft's Sandcastle open source product. The Sandcastle Styles project
-was used to enhance the output generated from the current release of Sandcastle.
-
-The Sandcastle project is located here:
-
-http://sandcastle.codeplex.com/
-
-The Sandcastle Styles project is located here:
-
-http://sandcastlestyles.codeplex.com/
-
-To generate the documentation, run:
-
-  nant sandcastle-all
-
-=======================================================================
-Building With Visual Studio 2008
-=======================================================================
-
-First build the project with nant, this will download and install 
-all the 3rd party dependencies for you.
-
-Open the solution File.  Build using "Build"->"Build Solution" 
-menu option.
-
-The resulting DLLs will be in build\${framework}\debug or the 
-build\${framework}\release directories depending on your settings 
-under "Build"->"Configuration Manager"
-
-If you have the Resharper plugin installed in Visual Studio, you can run 
-all the Unit Tests by using the "ReSharper"->"Unit Testing"->"Run All 
-Tests from Solution" menu option.  Please note that you must run an 
-Apache ActiveMQ Broker before kicking off the unit tests.  Otherwise,
-the standalone NUnit test runner can be used.  NUnit version 2.5.8
-is required to build and run the unit tests.
-
+=======================================================================
+Welcome to:
+ * Apache.NMS : The .NET Messaging Service Client API
+=======================================================================
+
+For more information see http://activemq.apache.org/nms
+
+=======================================================================
+Building With NAnt 0.86 see http://nant.sourceforge.net/
+=======================================================================
+
+NAnt version 0.86 or newer is required to build Apache.NMS.  Version 0.90
+or newer is highly recommended.
+To build the code using NAnt, run:
+
+  nant
+
+The NMS documentation can be generated into three different formats using
+Microsoft's Sandcastle open source product. The Sandcastle Styles project
+was used to enhance the output generated from the current release of Sandcastle.
+
+The Sandcastle project is located here:
+
+http://sandcastle.codeplex.com/
+
+The Sandcastle Styles project is located here:
+
+http://sandcastlestyles.codeplex.com/
+
+To generate the documentation, run:
+
+  nant sandcastle-all
+
+=======================================================================
+Building With Visual Studio 2008
+=======================================================================
+
+First build the project with nant, this will download and install 
+all the 3rd party dependencies for you.
+
+Open the solution File.  Build using "Build"->"Build Solution" 
+menu option.
+
+The resulting DLLs will be in build\${framework}\debug or the 
+build\${framework}\release directories depending on your settings 
+under "Build"->"Configuration Manager"
+
+If you have the Resharper plugin installed in Visual Studio, you can run 
+all the Unit Tests by using the "ReSharper"->"Unit Testing"->"Run All 
+Tests from Solution" menu option.  Please note that you must run an 
+Apache ActiveMQ Broker before kicking off the unit tests.  Otherwise,
+the standalone NUnit test runner can be used.  NUnit version 2.5.8
+is required to build and run the unit tests.
+
diff --git a/Resources/AboutResources.txt b/Resources/AboutResources.txt
deleted file mode 100644
index f3e286e..0000000
--- a/Resources/AboutResources.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-Images, layout descriptions, binary blobs and string dictionaries can be included 
-in your application as resource files.  Various Android APIs are designed to 
-operate on the resource IDs instead of dealing with images, strings or binary blobs 
-directly.
-
-For example, a sample Android app that contains a user interface layout (main.xml),
-an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png) 
-would keep its resources in the "Resources" directory of the application:
-
-Resources/
-    drawable-hdpi/
-        icon.png
-
-    drawable-ldpi/
-        icon.png
-
-    drawable-mdpi/
-        icon.png
-
-    layout/
-        main.xml
-
-    values/
-        strings.xml
-
-In order to get the build system to recognize Android resources, set the build action to
-"AndroidResource".  The native Android APIs do not operate directly with filenames, but 
-instead operate on resource IDs.  When you compile an Android application that uses resources, 
-the build system will package the resources for distribution and generate a class called
-"Resource" that contains the tokens for each one of the resources included. For example, 
-for the above Resources layout, this is what the Resource class would expose:
-
-public class Resource {
-    public class drawable {
-        public const int icon = 0x123;
-    }
-
-    public class layout {
-        public const int main = 0x456;
-    }
-
-    public class strings {
-        public const int first_string = 0xabc;
-        public const int second_string = 0xbcd;
-    }
-}
-
-You would then use R.drawable.icon to reference the drawable/icon.png file, or Resource.layout.main 
-to reference the layout/main.xml file, or Resource.strings.first_string to reference the first 
-string in the dictionary file values/strings.xml.
\ No newline at end of file
diff --git a/Resources/Resource.Designer.cs b/Resources/Resource.Designer.cs
deleted file mode 100644
index 1bfca94..0000000
--- a/Resources/Resource.Designer.cs
+++ /dev/null
@@ -1,60 +0,0 @@
-#pragma warning disable 1591
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.18444
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-[assembly: global::Android.Runtime.ResourceDesignerAttribute("Apache.NMS.Resource", IsApplication=false)]
-
-namespace Apache.NMS
-{
-	
-	
-	[System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")]
-	public partial class Resource
-	{
-		
-		static Resource()
-		{
-			global::Android.Runtime.ResourceIdManager.UpdateIdValues();
-		}
-		
-		public partial class Attribute
-		{
-			
-			static Attribute()
-			{
-				global::Android.Runtime.ResourceIdManager.UpdateIdValues();
-			}
-			
-			private Attribute()
-			{
-			}
-		}
-		
-		public partial class String
-		{
-			
-			// aapt resource value: 0x7f020001
-			public static int ApplicationName = 2130837505;
-			
-			// aapt resource value: 0x7f020000
-			public static int Hello = 2130837504;
-			
-			static String()
-			{
-				global::Android.Runtime.ResourceIdManager.UpdateIdValues();
-			}
-			
-			private String()
-			{
-			}
-		}
-	}
-}
-#pragma warning restore 1591
diff --git a/Resources/Values/Strings.xml b/Resources/Values/Strings.xml
deleted file mode 100644
index 9d44e29..0000000
--- a/Resources/Values/Strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string name="Hello">Hello World, Click Me!</string>
-    <string name="ApplicationName">$projectname$</string>
-</resources>
diff --git a/docs/.gitignore b/docs/.gitignore
new file mode 100644
index 0000000..cb891f8
--- /dev/null
+++ b/docs/.gitignore
@@ -0,0 +1,10 @@
+###############
+#    folder   #
+###############
+/**/DROP/
+/**/TEMP/
+/**/packages/
+/**/bin/
+/**/obj/
+_site
+log.txt
\ No newline at end of file
diff --git a/docs/api/.gitignore b/docs/api/.gitignore
new file mode 100644
index 0000000..f798527
--- /dev/null
+++ b/docs/api/.gitignore
@@ -0,0 +1,5 @@
+###############
+#  temp file  #
+###############
+*.yml
+.manifest
diff --git a/docs/api/index.md b/docs/api/index.md
new file mode 100644
index 0000000..1cb6831
--- /dev/null
+++ b/docs/api/index.md
@@ -0,0 +1,2 @@
+# PLACEHOLDER
+TODO: Add .NET projects to the *src* folder and run `docfx` to generate **REAL** *API Documentation*!
diff --git a/docs/articles/intro.md b/docs/articles/intro.md
new file mode 100644
index 0000000..901a16a
--- /dev/null
+++ b/docs/articles/intro.md
@@ -0,0 +1 @@
+# Add your introductions here!
diff --git a/docs/articles/toc.yml b/docs/articles/toc.yml
new file mode 100644
index 0000000..f64352c
--- /dev/null
+++ b/docs/articles/toc.yml
@@ -0,0 +1,2 @@
+- name: Introduction
+  href: intro.md
diff --git a/docs/docfx.json b/docs/docfx.json
new file mode 100644
index 0000000..77904d2
--- /dev/null
+++ b/docs/docfx.json
@@ -0,0 +1,75 @@
+{
+  "metadata": [
+    {
+      "src": [
+        {
+          "files": [
+            "src/nms-api/nms-api.csproj"
+          ],
+          "src": ".."
+        }
+      ],
+      "dest": "api",
+      "disableGitFeatures": false,
+      "disableDefaultFilter": false,
+      "properties": {
+        "TargetFramework": "netstandard2.0"
+      }
+    }
+  ],
+  "build": {
+    "content": [
+      {
+        "files": [
+          "api/**.yml",
+          "api/index.md"
+        ]
+      },
+      {
+        "files": [
+          "articles/**.md",
+          "articles/**/toc.yml",
+          "toc.yml",
+          "*.md"
+        ]
+      }
+    ],
+    "resource": [
+      {
+        "files": [
+          "images/**"
+        ]
+      }
+    ],
+    "overwrite": [
+      {
+        "files": [
+          "apidoc/**.md"
+        ],
+        "exclude": [
+          "obj/**",
+          "_site/**"
+        ]
+      }
+    ],
+    "globalMetadata": {
+      "_appTitle": "Apache NMS API Documentation",
+      "_appLogoPath": "/images/activemq_logo_icon.png",      
+      "_appFooter": "Copyright © 2005-2019 Apache Software Foundation project<br>Generated by <strong>DocFX</strong>",
+      "_enableSearch": "true"
+    },
+    "dest": "_site",
+    "globalMetadataFiles": [],
+    "fileMetadataFiles": [],
+    "template": [
+      "default",
+      "template"
+    ],
+    "postProcessors": [],
+    "markdownEngineName": "markdig",
+    "noLangKeyword": false,
+    "keepFileLink": false,
+    "cleanupCacheHistory": false,
+    "disableGitFeatures": false
+  }
+}
\ No newline at end of file
diff --git a/docs/images/activemq_logo_icon.png b/docs/images/activemq_logo_icon.png
new file mode 100644
index 0000000..c2b43f5
Binary files /dev/null and b/docs/images/activemq_logo_icon.png differ
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..95887de
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,4 @@
+# This is the **HOMEPAGE**.
+Refer to [Markdown](http://daringfireball.net/projects/markdown/) for how to write markdown files.
+## Quick Start Notes:
+1. Add images to the *images* folder if the file is referencing an image.
diff --git a/docs/nms-docs.csproj b/docs/nms-docs.csproj
new file mode 100644
index 0000000..ca51350
--- /dev/null
+++ b/docs/nms-docs.csproj
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+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.
+  -->
+
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netstandard2.0</TargetFramework>
+    <RootNamespace>nms_docs</RootNamespace>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="docfx.console" Version="2.43.1">
+      <PrivateAssets>all</PrivateAssets>
+      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
+    </PackageReference>
+  </ItemGroup>
+
+</Project>
diff --git a/docs/template/partials/logo.tmpl.partial b/docs/template/partials/logo.tmpl.partial
new file mode 100644
index 0000000..0c6e7e1
--- /dev/null
+++ b/docs/template/partials/logo.tmpl.partial
@@ -0,0 +1,24 @@
+{{! 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.}}
+
+<style>
+img.activemq-logo {
+    height: 51px;
+}
+</style>
+
+<a class="navbar-brand" href="{{_rel}}index.html">
+  <img id="logo" class="svg activemq-logo" src="{{_rel}}{{{_appLogoPath}}}{{^_appLogoPath}}logo.svg{{/_appLogoPath}}" alt="{{_appName}}" >
+</a>
diff --git a/docs/toc.yml b/docs/toc.yml
new file mode 100644
index 0000000..9d71a58
--- /dev/null
+++ b/docs/toc.yml
@@ -0,0 +1,3 @@
+- name: Api Documentation
+  href: api/
+  homepage: api/index.md
diff --git a/nant-common.xml b/nant-common.xml
deleted file mode 100644
index 3e5a8fc..0000000
--- a/nant-common.xml
+++ /dev/null
@@ -1,658 +0,0 @@
-<?xml version="1.0"?>
-<!--
-    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.
--->
-<project xmlns="http://nant.sourceforge.net/release/0.85/nant.xsd">
-
-    <!-- ============================================================================================ -->
-    <!--    P R O P E R T Y    D E F I N I T I O N S                                                  -->
-    <!-- ============================================================================================ -->
-
-    <!-- global project settings -->
-    <property name="project.cls.compliant"   value="true" unless="${property::exists('project.cls.compliant')}" />
-    <property name="project.release.type"    value="SNAPSHOT" unless="${property::exists('project.release.type')}" />
-    <property name="project.version.full"    value="${project.version + if(project.release.type == 'snapshot', '-' + project.release.type, '')}" dynamic="true" />
-    <property name="project.startyear"       value="2005" />
-    <property name="build.dir"               value="${basedir}/build" />
-    <property name="doc.dir"                 value="${build.dir}/doc" />
-    <property name="lib.dir"                 value="${path::combine(basedir, 'lib')}" dynamic="true" />
-    <property name="lib.family.dir"          value="${path::combine(lib.dir, framework::get-family(framework::get-target-framework()))}" dynamic="true" />
-    <property name="lib.framework.dir"       value="${path::combine(lib.family.dir, version::to-string(framework::get-version(framework::get-target-framework())))}" dynamic="true" />
-    <property name="package.dir"             value="${basedir}/package" />
-    <property name="src.package.name"        value="${project.name + '-' + project.version + if(project.release.type == 'SNAPSHOT', '-' + project.release.type, '') + '-src.zip'}" />
-    <property name="bin.package.name"        value="${project.name + '-' + project.version + if(project.release.type == 'SNAPSHOT', '-' + project.release.type, '') + '-bin.zip'}" />
-
-    <!-- default configuration -->
-    <property name="build.defines"           value="" />
-    <property name="build.noskip"            value="false" />
-    <property name="build.skip"              value="false" />
-    <property name="build.skip.release"      value="false" unless="${property::exists('build.skip.release')}" />
-    <property name="download.skip"           value="false" unless="${property::exists('download.skip')}"/>
-    <property name="install.skip"            value="false" unless="${property::exists('install.skip')}"/>
-    <property name="compile.skip"            value="false" unless="${property::exists('compile.skip')}" />
-    <property name="current.build.config"    value="${if(project.release.type == 'release', 'release', 'debug')}" overwrite="false" />
-    <property name="current.build.framework" value="${framework::get-target-framework()}" overwrite="false" />
-    <property name="current.build.defines"   value="${build.defines}" />
-    <property name="build.framework.strings" value="net-2.0,net-3.5,net-4.0,mono-2.0,mono-4.0,netcf-2.0,netcf-3.5" unless="${property::exists('build.framework.strings')}"/>
-    <property name="current.build.framework.assembly.dir" value="${framework::get-assembly-directory(framework::get-target-framework())}" dynamic="true" />
-
-    <property name="build.config.strings"    value="${if(property::exists('configuration'), configuration, if(build.skip.release == 'true', 'debug', 'debug,release'))}" dynamic="true" />
-
-    <!-- Figure out the user's HOME directory -->
-    <property name="user.home" value="${environment::get-variable('HOME')}"
-            if="${environment::variable-exists('HOME') and platform::is-unix()}"
-            unless="${property::exists('user.home')}" />
-    <property name="user.home" value="${environment::get-variable('USERPROFILE')}"
-            if="${environment::variable-exists('USERPROFILE') and platform::is-windows()}"
-            unless="${property::exists('user.home')}" />
-    <fail message="The HOME environment variable is not defined.  Please set it to your home directory."
-            unless="${property::exists('user.home')}" if="${platform::is-unix()}" />
-    <fail message="The USERPROFILE environment variable is not defined.  Please set it to your home directory."
-            unless="${property::exists('user.home')}" if="${platform::is-windows()}" />
-
-    <!-- Figure out the NANT repositories -->
-    <property name="nant.remote.repo" value="${environment::get-variable('NANT_REMOTE_REPO')}"
-            if="${environment::variable-exists('NANT_REMOTE_REPO')}"
-            unless="${property::exists('nant.remote.repo')}" />
-    <property name="nant.local.repo" value="${environment::get-variable('NANT_REPO')}/local"
-            if="${environment::variable-exists('NANT_REPO')}"
-            unless="${property::exists('nant.local.repo')}" />
-    <property name="nant.local.repo" value="${user.home}/.nant/repository/local"
-            unless="${property::exists('nant.local.repo')}" />
-
-    <!-- Figure out the keyfile location -->
-    <property name="snk.file" value="${environment::get-variable('ACTIVEMQ_DOTNET_SNK')}"
-            if="${environment::variable-exists('ACTIVEMQ_DOTNET_SNK')}"
-            unless="${property::exists('snk.file')}" />
-    <property name="snk.file" value="${basedir}/keyfile/NMSKey.snk"
-            if="${not property::exists('snk.file')}" />
-
-    <!-- ============================================================================================ -->
-    <!--      I N I T I A L I Z A T I O N     T A R G E T S                                           -->
-    <!-- ============================================================================================ -->
-
-    <target name="init" description="Initializes build properties">
-        <!-- enabled the release or debug configuration -->
-        <call target="set-${current.build.config}-configuration" />
-
-        <!-- Check to see if our build setup for the target framework -->
-        <if test="${not(target::exists('set-'+current.build.framework+'-framework-configuration'))}">
-            <fail message="The '${current.build.framework}' framework is not supported by this version of ActiveMQ .NET" />
-        </if>
-        <call target="set-${current.build.framework}-framework-configuration" />
-
-        <!-- Check to see current platform supports the target framework -->
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="build.skip" value="false" />
-        </if>
-        <if test="${not framework::exists(current.build.framework)}">
-            <if test="${build.noskip}">
-                <fail message="${current.build.framework.name} is not available." />
-            </if>
-            <if test="${not(build.noskip)}">
-                <echo message="${current.build.framework.name} is not available. Build skipped." />
-                <property name="build.skip" value="true" />
-            </if>
-        </if>
-
-        <!-- Check to see if we should skip this build framework. -->
-        <if test="${not(build.skip)}">
-            <if test="${property::exists('build.'+current.build.framework+'.skip')}">
-                <property name="build.skip" value="true" />
-                <echo message="The '${current.build.framework}' framework is not supported by this version of ActiveMQ .NET" />
-            </if>
-        </if>
-
-        <property name="current.build.keysign" value="${current.build.framework.sign}" />
-        <property name="build.bin.dir" value="${build.dir}/${current.build.framework}/${current.build.config}" />
-        <if test="${not(build.skip)}">
-            <echo message="Doing ${if(current.build.keysign,'a signed','an unsigned')} ${current.build.config} build for the ${current.build.framework.name} framework" />
-            <mkdir dir="${build.bin.dir}" />
-        </if>
-        <call target="dependency-init" />
-    </target>
-
-    <!-- Generate four-digit build number -->
-    <target name="generate-build-number">
-        <if test="${not property::exists('project.version.numeric')}">
-            <script language="C#">
-                <imports>
-                    <import namespace="System.Globalization" />
-                    <import namespace="System.Threading" />
-                </imports>
-                <code>
-                    <!-- Format for assembly revision is the number of days from the year the project 'started', property project.startyear.  -->
-                    <![CDATA[
-                        public static void ScriptMain(Project project)
-                        {
-                            int startYear = Convert.ToInt32(project.Properties["project.startyear"]);
-                            DateTime start = new DateTime(startYear, 1, 1);
-                            TimeSpan ts = DateTime.Now - start;
-                            project.Properties["project.version.numeric"] = project.Properties["project.version"].ToString() + "." + ts.Days.ToString();
-                        }
-                    ]]>
-                </code>
-            </script>
-        </if>
-    </target>
-
-    <!-- Generate assemblyinfo.cs files -->
-    <target name="generate-assemblyinfo" depends="generate-build-number" description="Generate the assembly info for the path in assemblyinfo.filename">
-        <asminfo output="${assemblyinfo.filename}" language="CSharp">
-            <imports>
-                <import namespace="System" />
-                <import namespace="System.Reflection" />
-                <import namespace="System.Runtime.InteropServices" />
-            </imports>
-            <attributes>
-                <attribute type="ComVisibleAttribute" value="false" />
-                <attribute type="CLSCompliantAttribute" value="${project.cls.compliant}" />
-                <attribute type="AssemblyTitleAttribute" value="${project.short_description}" />
-                <attribute type="AssemblyDescriptionAttribute" value="${project.description}" />
-                <attribute type="AssemblyConfigurationAttribute" value="${project.release.type}" />
-                <attribute type="AssemblyCompanyAttribute" value="http://activemq.apache.org/nms" />
-                <attribute type="AssemblyProductAttribute" value="${project.short_description}" />
-                <attribute type="AssemblyCopyrightAttribute" value="Copyright (C) ${project.startyear}-${datetime::get-year(datetime::now())} Apache Software Foundation" />
-                <attribute type="AssemblyTrademarkAttribute" value="" />
-                <attribute type="AssemblyCultureAttribute" value="" />
-                <attribute type="AssemblyVersionAttribute" value="${project.version.numeric}" />
-                <attribute type="AssemblyInformationalVersionAttribute" value="${project.version}" />
-            </attributes>
-        </asminfo>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--    C O N F I G U R A T I O N     T A R G E T S                                               -->
-    <!-- ============================================================================================ -->
-
-    <target name="set-noskip-configuration" description="Disable skipping builds">
-        <property name="project.noskip" value="true" />
-    </target>
-
-    <target name="set-debug-configuration" description="Enabled 'debug' builds">
-        <property name="current.build.config" value="debug" />
-        <property name="current.build.config.debug" value="true" />
-        <property name="current.build.config.release" value="false" />
-        <property name="current.build.defines" value="${build.defines}DEBUG,TRACE," dynamic="true" />
-        <property name="csc.debug" value="Full" />
-        <property name="csc.optimize" value="false" />
-    </target>
-
-    <target name="set-release-configuration" description="Enabled 'release' builds">
-        <property name="current.build.config" value="release" />
-        <property name="current.build.config.release" value="true" />
-        <property name="current.build.config.debug" value="false" />
-        <property name="csc.debug" value="Full" />
-        <property name="csc.optimize" value="true" />
-    </target>
-
-    <target name="set-net-2.0-framework-configuration">
-        <property name="current.build.framework" value="net-2.0" />
-        <property name="current.build.framework.name" value=".NET 2.0" />
-        <property name="current.build.defines" value="${build.defines}NET,NET_2_0" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v2_0" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-        <!-- Use the .NET 3.5 compiler for improved language features.  Still targets same runtime. -->
-        <if test="${framework::exists('net-3.5')}">
-            <property name="nant.settings.currentframework" value="net-3.5" />
-        </if>
-    </target>
-
-    <target name="set-net-3.5-framework-configuration">
-        <property name="current.build.framework" value="net-3.5" />
-        <property name="current.build.framework.name" value=".NET 3.5" />
-        <property name="current.build.defines" value="${build.defines}NET,NET_2_0,NET_3_5" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v6_1" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <target name="set-net-4.0-framework-configuration">
-        <property name="current.build.framework" value="net-4.0" />
-        <property name="current.build.framework.name" value=".NET 4.0" />
-        <property name="current.build.defines" value="${build.defines}NET,NET_2_0,NET_3_5,NET_4_0" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v7_0" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <target name="set-netcf-2.0-framework-configuration">
-        <property name="current.build.framework" value="netcf-2.0" />
-        <property name="current.build.framework.name" value=".NET Compact Framework 2.0" />
-        <property name="current.build.defines" value="${build.defines}PocketPC,NETCF,NETCF_2_0" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v1_1" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <target name="set-netcf-3.5-framework-configuration">
-        <property name="current.build.framework" value="netcf-3.5" />
-        <property name="current.build.framework.name" value=".NET Compact Framework 3.5" />
-        <property name="current.build.defines" value="${build.defines}PocketPC,NETCF,NETCF_3_5" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v3_5" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <target name="set-mono-2.0-framework-configuration">
-        <property name="current.build.framework" value="mono-2.0" />
-        <property name="current.build.framework.name" value="Mono 2.0" />
-        <property name="current.build.defines" value="${build.defines}MONO,MONO_2_0" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v1_1" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <target name="set-mono-4.0-framework-configuration">
-        <property name="current.build.framework" value="mono-4.0" />
-        <property name="current.build.framework.name" value="Mono 4.0" />
-        <property name="current.build.defines" value="${build.defines}MONO,MONO_4_0" dynamic="true" />
-        <property name="current.build.framework.sign" value="true" />
-        <property name="link.sdkdoc.version" value="SDK_v1_1" />
-        <property name="link.sdkdoc.web" value="true" />
-        <if test="${framework::exists(current.build.framework)}">
-            <property name="nant.settings.currentframework" value="${current.build.framework}" />
-        </if>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--     C O M P I L E    T A R G E T S                                                           -->
-    <!-- ============================================================================================ -->
-
-    <target name="compile-all" description="Compile all build configurations for all runtime configurations">
-        <echo message="Compiling all build configurations for all runtime configurations." />
-        <foreach item="String" in="${build.framework.strings}" delim="," property="current.build.framework">
-            <foreach item="String" in="${build.config.strings}" delim="," property="current.build.config">
-                <call target="compile-target" />
-            </foreach>
-        </foreach>
-    </target>
-
-    <target name="compile-target" depends="init, download-vendor, conditional-compile" />
-
-    <target name="conditional-compile" depends="init" unless="${build.skip or compile.skip}"
-            description="Conditionaly compiles all the modules if build framework and type are supported">
-        <call target="compile" />
-    </target>
-
-    <target name="compile" description="Compile everything">
-        <call target="compile-main" cascade="false" />
-        <call target="compile-test" cascade="false" />
-    </target>
-
-    <target name="compile-main" depends="init" description="Build the main library">
-        <echo message="Building the ${project.name} library" />
-        <property name="assemblyinfo.filename" value="src/main/csharp/CommonAssemblyInfo.cs" />
-        <call target="generate-assemblyinfo" />
-
-        <csc if="${current.build.keysign}" keyfile="${snk.file}" target="library"
-                define="${current.build.defines}" warnaserror="false" debug="${csc.debug}" optimize="${csc.optimize}"
-                output="${build.bin.dir}/${project.name}.dll" doc="${build.bin.dir}/${project.name}.xml">
-            <nowarn>
-                <warning number="1591" /> <!-- do not report warnings for missing XML comments -->
-            </nowarn>
-            <sources failonempty="true">
-                <include name="src/main/csharp/**.cs" />
-            </sources>
-            <references refid="dependencies" />
-        </csc>
-        <csc if="${not current.build.keysign}" target="library"
-                define="${current.build.defines}" warnaserror="false" debug="${csc.debug}" optimize="${csc.optimize}"
-                output="${build.bin.dir}/${project.name}.dll" doc="${build.bin.dir}/${project.name}.xml">
-            <nowarn>
-                <warning number="1591" /> <!-- do not report warnings for missing XML comments -->
-            </nowarn>
-            <sources failonempty="true">
-                <include name="src/main/csharp/**.cs" />
-            </sources>
-            <references refid="dependencies" />
-        </csc>
-        <call target="copy-content" />
-    </target>
-
-    <!-- Compile the nms-test module -->
-    <target name="compile-test" depends="compile-main" description="Build the test library">
-        <echo message="Building the ${project.name}.Test library" />
-        <property name="assemblyinfo.filename" value="src/test/csharp/CommonAssemblyInfo.cs" />
-        <call target="generate-assemblyinfo" />
-
-        <csc if="${current.build.keysign}" keyfile="${snk.file}" target="library"
-                define="${current.build.defines}" warnaserror="false" debug="${csc.debug}" optimize="${csc.optimize}"
-                output="${build.bin.dir}/${project.name}.Test.dll" doc="${build.bin.dir}/${project.name}.Test.xml">
-            <nowarn>
-                <warning number="1591" /> <!-- do not report warnings for missing XML comments -->
-                <warning number="3016" /> <!-- do not report warnings for array parameters  -->
-            </nowarn>
-            <sources failonempty="true">
-                <include name="src/test/csharp/**.cs" />
-            </sources>
-            <references refid="test.dependencies" />
-        </csc>
-        <csc if="${not current.build.keysign}" target="library"
-                define="${current.build.defines}" warnaserror="false" debug="${csc.debug}" optimize="${csc.optimize}"
-                output="${build.bin.dir}/${project.name}.Test.dll" doc="${build.bin.dir}/${project.name}.Test.xml">
-            <nowarn>
-                <warning number="1591" /> <!-- do not report warnings for missing XML comments -->
-                <warning number="3016" /> <!-- do not report warnings for array parameters  -->
-            </nowarn>
-            <sources failonempty="true">
-                <include name="src/test/csharp/**.cs" />
-            </sources>
-            <references refid="test.dependencies" />
-        </csc>
-        <call target="copy-content" />
-    </target>
-
-    <target name="copy-content">
-        <foreach item="File" property="content.filename">
-            <in>
-                <items refid="content.filenames" />
-            </in>
-            <do>
-                <copy todir="${build.bin.dir}" file="${content.filename}" if="${not file::up-to-date(content.filename, '${build.bin.dir}/${content.filename}')}" />
-            </do>
-        </foreach>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--      I N S T A L L     T A R G E T S                                                         -->
-    <!-- ============================================================================================ -->
-
-    <target name="install-all" description="Install all build configurations for all runtime configurations">
-        <echo message="Installing all build configurations for all runtime configurations." />
-        <foreach item="String" in="${build.framework.strings}" delim="," property="current.build.framework">
-            <foreach item="String" in="${build.config.strings}" delim="," property="current.build.config">
-                <call target="install" />
-            </foreach>
-        </foreach>
-    </target>
-
-    <!-- Install the modules to the local repo -->
-    <target name="install" depends="init, compile-target, conditional-install"
-            description="Install the artifacts into the nant repo" />
-
-    <target name="conditional-install" unless="${build.skip or install.skip}"
-            description="Install the artifacts into the nant repo">
-        <property name="path" value="${project.group}/${project.name}/${project.version.full}/${current.build.framework}/${current.build.config}" />
-        <foreach item="File" property="install.filename">
-            <in>
-                <items refid="install.filenames" />
-            </in>
-            <do>
-                <property name="repo.task.artifact" value="${path}/${path::get-file-name(install.filename)}" />
-                <property name="repo.task.src" value="${install.filename}" />
-                <property name="repo.task.dest" value="${nant.local.repo}/${repo.task.artifact}" />
-                <mkdir dir="${directory::get-parent-directory(repo.task.dest)}" />
-                <copy file="${repo.task.src}" tofile="${repo.task.dest}" />
-            </do>
-        </foreach>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--      R E P O    D O W N L O A D     T A R G E T S                                            -->
-    <!-- ============================================================================================ -->
-
-    <target name="download-vendor-all" description="Download vendor files for all runtime configurations">
-        <echo message="Downloading vendor files for all runtime configurations." />
-        <property name="current.build.config" value="release" />
-        <foreach item="String" in="${build.framework.strings}" delim="," property="current.build.framework">
-            <call target="download-vendor" />
-        </foreach>
-    </target>
-
-    <target name="download-vendor" depends="vendor-init, conditional-download"
-                description="Download the vendor artifacts from the nant repo" />
-
-    <target name="conditional-download" unless="${build.skip or download.skip}"
-                description="Download the artifacts from the nant repo">
-        <!-- Iterate over the defined vendor filesets. -->
-        <foreach item="String" in="${vendor.fileset.names}" delim="," property="current.vendor">
-            <property name="vendor.name" value="${property::get-value(current.vendor + '.name')}" />
-            <property name="vendor.group" value="${property::get-value(current.vendor + '.group')}" />
-            <property name="vendor.version" value="${property::get-value(current.vendor + '.version')}" />
-            <property name="vendor.filenames" value="${property::get-value(current.vendor + '.filenames')}" />
-            <property name="local.repo.vendor.path" value="${nant.local.repo}/${vendor.group}/${vendor.name}/${vendor.version}/${current.build.framework}/${current.build.config}" />
-            <property name="lib.path" value="lib/${vendor.name}/${current.build.framework}" />
-            <!--
-            Update the LIB folder with the latest version of the file.  If there is a newer version
-            installed in the local repository, then that version will be copied into the LIB folder.
-            -->
-            <foreach item="String" in="${vendor.filenames}" delim="," property="repo.task.artifact">
-                <property name="lib.task.dest" value="${lib.path}/${repo.task.artifact}" />
-                <mkdir dir="${directory::get-parent-directory(lib.task.dest)}" />
-                <property name="repo.task.src" value="${local.repo.vendor.path}/${repo.task.artifact}" />
-                <copy file="${repo.task.src}" tofile="${lib.task.dest}" if="${file::exists(repo.task.src)}" />
-                <if test="${not file::exists(lib.task.dest)}">
-                    <echo message="Required dependent assembly ${repo.task.artifact} from ${vendor.name} for ${current.build.framework} is not available. Build skipped." />
-                    <property name="build.skip" value="true" />
-                </if>
-            </foreach>
-        </foreach>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--      T E S T     T A R G E T S                                                               -->
-    <!-- ============================================================================================ -->
-
-    <target name="test" depends="test-debug" description="Alias test target to test-debug" />
-
-    <target name="test-all" depends="test-debug, test-release" description="Test all build configurations for all runtime configurations" />
-
-    <target name="test-debug" depends="" description="Test debug build configurations for all runtime configurations">
-        <property name="current.build.config" value="debug" />
-        <call target="test-frameworks" />
-    </target>
-
-    <target name="test-release" depends="" description="Test release build configurations for all runtime configurations">
-        <property name="current.build.config" value="release" />
-        <call target="test-frameworks" />
-    </target>
-
-    <target name="test-frameworks">
-        <foreach item="String" in="${build.framework.strings}" delim="," property="current.build.framework">
-            <call target="init" />
-            <if test="${not build.skip}">
-                <exec program="nunit-console" failonerror="true" workingdir="build/${current.build.framework}/${current.build.config}">
-                    <arg value="${NUnit.Projectfile}" />
-                    <arg value="-labels" />
-                    <arg value="-exclude=Manual,LongRunning" />
-                    <arg value="-xml=Nunit.TestOutput.xml" />
-                </exec>
-            </if>
-        </foreach>
-    </target>
-
-    <!-- ============================================================================================ -->
-    <!--      M I S C E L L A N E O U S    T A R G E T S                                              -->
-    <!-- ============================================================================================ -->
-
-    <target name="build" depends="default" description="Build the project." />
-
-    <target name="rebuild" depends="clean,build" description="Rebuild the project." />
-
-    <target name="clean" description="Deletes build">
-        <if test="${target::exists('clean-init')}">
-            <call target="clean-init" />
-        </if>
-        <foreach item="String" in="${build.framework.strings}" delim="," property="current.build.framework">
-            <foreach item="String" in="${build.config.strings}" delim="," property="current.build.config">
-                <call target="clean-proj" />
-            </foreach>
-        </foreach>
-    </target>
-
-    <target name="clean-proj" depends="init" description="Deletes specific project build">
-        <property name="clean.dir" value="build/${current.build.framework}/${current.build.config}" />
-        <delete dir="${clean.dir}" if="${directory::exists(clean.dir)}" />
-        <property name="clean.dir" value="package/${current.build.config}" />
-        <delete dir="${clean.dir}" if="${directory::exists(clean.dir)}" />
-    </target>
-
-    <target name="package" description="Bundle the source and binary distributions.">
-        <mkdir dir="${package.dir}"
-                if="${not directory::exists(package.dir)}" />
-        <zip zipfile="${package.dir}/${bin.package.name}">
-            <fileset refid="bin.package.contents"/>
-        </zip>
-        <zip zipfile="${package.dir}/${src.package.name}">
-            <fileset refid="src.package.contents"/>
-        </zip>
-    </target>
-
-    <target name="doc" depends="build">
-        <mkdir dir="${doc.dir}" />
-        <ndoc failonerror="false">
-            <assemblies basedir="${build.bin.dir}">
-                <include name="${project.name}.dll" />
-            </assemblies>
-            <summaries basedir="${basedir}/src/main/ndoc">
-                <include name="NamespaceSummary.xml" />
-            </summaries>
-            <documenters>
-                <documenter name="MSDN">
-                    <property name="OutputDirectory" value="${doc.dir}" />
-                    <property name="HtmlHelpName" value="${project.name}" />
-                    <property name="HtmlHelpCompilerFilename" value="hhc.exe" />
-                    <property name="IncludeFavorites" value="False" />
-                    <property name="Title" value="${project.short_description}" />
-                    <property name="SplitTOCs" value="False" />
-                    <property name="DefaulTOC" value="" />
-                    <!--
-                    <property name="ShowVisualBasic" value="True" />
-                    <property name="ShowMissingSummaries" value="True" />
-                    <property name="ShowMissingRemarks" value="True" />
-                    <property name="ShowMissingParams" value="True" />
-                    <property name="ShowMissingReturns" value="True" />
-                    <property name="ShowMissingValues" value="True" />
-                    -->
-                    <property name="DocumentInternals" value="False" />
-                    <property name="DocumentProtected" value="True" />
-                    <property name="DocumentPrivates" value="False" />
-                    <property name="DocumentEmptyNamespaces" value="False" />
-                    <property name="IncludeAssemblyVersion" value="True" />
-                    <property name="CopyrightText" value="" />
-                    <property name="CopyrightHref" value="" />
-                </documenter>
-            </documenters>
-        </ndoc>
-    </target>
-
-    <target name="sandcastle" depends="set-release-configuration, init, conditional-compile">
-        <!-- Directories -->
-        <property name="sandcastle.style" value="vs2005" unless="${property::exists('sandcastle.style')}" />
-        <property name="documentation.dir" value="${build.bin.dir}" />
-        <property name="bin.intern.dir" value="${build.bin.dir}" />
-        <property name="bin.extern.dir" value="${basedir}\lib\NUnit\net-2.0" />
-        <property name="sandcastle.dir" value="${environment::get-variable('DXROOT')}" />
-        <property name="sandcastle.workingdir" value="${build.dir}\doc\${sandcastle.style}" />
-        <property name="sandcastle.output.dir" value="${sandcastle.workingdir}\Output" />
-
-        <!-- Executables -->
-        <property name="sandcastle.mrefbuilder.exe" value="${sandcastle.dir}\productiontools\mrefbuilder.exe" />
-        <property name="sandcastle.buildassembler.exe" value="${sandcastle.dir}\productiontools\buildassembler.exe" />
-        <property name="sandcastle.xsltransform.exe" value="${sandcastle.dir}\productiontools\xsltransform.exe" />
-        <property name="sandcastle.productiontransforms.dir" value="${sandcastle.dir}\ProductionTransforms" />
-
-        <!-- Create or Cleanup Working Directory -->
-        <mkdir dir="${sandcastle.workingdir}"
-                if="${not directory::exists(sandcastle.workingdir)}" />
-        <delete>
-            <fileset basedir="${sandcastle.workingdir}">
-                <include name="**\*" />
-            </fileset>
-        </delete>
-
-        <!-- Copy configuration file, and hard code references -->
-        <copy file="${sandcastle.dir}/Presentation/${sandcastle.style}/Configuration/Sandcastle.config"
-                tofile="${sandcastle.workingdir}/Sandcastle.config">
-            <filterchain>
-                <replacestring from="&quot;..\..\" to="&quot;${sandcastle.dir}\" />
-                <replacestring from="&quot;..\" to="&quot;${sandcastle.dir}\Examples\" />
-                <replacestring from="&quot;.\comments.xml" to="&quot;${documentation.dir}\${project.name}.xml" />
-                <replacestring from="&quot;%DXROOT%\Presentation\${sandcastle.style}\content\feedback_content.xml&quot;" to="&quot;${basedir}/src/main/sandcastle/feedback_content.xml&quot;" />
-            </filterchain>
-        </copy>
-
-        <!-- Run MRefBuilder (introspection on assemblies) to create basic Reflection XML -->
-        <exec program="${sandcastle.mrefbuilder.exe}" workingdir="${sandcastle.workingdir}">
-            <arg value="${bin.intern.dir}/${project.name}.dll" />
-            <arg value="/out:reflection.int.xml" />
-            <arg value="/dep:${bin.extern.dir}\*.dll" />
-        </exec>
-
-        <!-- Create Reflection XML -->
-        <exec program="${sandcastle.xsltransform.exe}" workingdir="${sandcastle.workingdir}">
-            <arg value="/xsl:&quot;${sandcastle.productiontransforms.dir}\ApplyVSDocModel.xsl&quot;" if="${sandcastle.style != 'prototype'}" />
-            <arg value="/xsl:&quot;${sandcastle.productiontransforms.dir}\ApplyPrototypeDocModel.xsl&quot;" if="${sandcastle.style == 'prototype'}" />
-            <arg value="/xsl:&quot;${sandcastle.productiontransforms.dir}\AddFriendlyFilenames.xsl&quot;" /> <!-- if="${sandcastle.style != 'prototype'}" /> -->
-            <arg value="/xsl:&quot;${sandcastle.productiontransforms.dir}\AddGuidFilenames.xsl&quot;" if="${sandcastle.style == 'disabled'}" />
-            <arg value="reflection.int.xml" />
-            <arg value="/out:reflection.xml" />
-            <arg value="/arg:IncludeAllMembersTopic=true" />
-            <arg value="/arg:IncludeInheritedOverloadTopics=true" />
-        </exec>
-
-        <!-- Create Manifest (list of Topics) -->
-        <exec program="${sandcastle.xsltransform.exe}" workingdir="${sandcastle.workingdir}">
-            <arg value="/xsl:&quot;${sandcastle.productiontransforms.dir}\ReflectionToManifest.xsl&quot;" />
-            <arg value="reflection.xml" />
-            <arg value="/out:manifest.xml" />
-        </exec>
-
-        <!-- Create Output Environment -->
-        <mkdir dir="${sandcastle.output.dir}" />
-        <mkdir dir="${sandcastle.output.dir}/html" />
-        <copy todir="${sandcastle.output.dir}">
-            <fileset basedir="${sandcastle.dir}/Presentation/${sandcastle.style}">
-                <include name="icons/*" />
-                <include name="media/*" />
-                <include name="scripts/*" />
-                <include name="styles/*" />
-            </fileset>
-        </copy>
-
-        <!-- Run BuildAssembler (create html topic files) -->
-        <exec program="${sandcastle.buildassembler.exe}" workingdir="${sandcastle.workingdir}">
-            <arg value="/config:Sandcastle.config" />
-            <arg value="manifest.xml" />
-        </exec>
-    </target>
-
-    <target name="sandcastle-all" description="Generate all formats of the Sandcastle documentation files.">
-        <foreach item="String" in="vs2005,prototype,hana" delim="," property="sandcastle.style">
-            <call target="sandcastle" />
-        </foreach>
-    </target>
-</project>
diff --git a/nant.build b/nant.build
deleted file mode 100644
index 5d87fdd..0000000
--- a/nant.build
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0"?>
-<!--
-    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.
--->
-
-<project name="Apache.NMS" default="default" xmlns="http://nant.sourceforge.net/release/0.85/nant.xsd">
-    <!-- ============================================================================================ -->
-    <!--      I N I T I A L I Z A T I O N                                                             -->
-    <!-- ============================================================================================ -->
-    <property name="basedir" value="${project::get-base-directory()}" />
-    <property name="project.name" value="Apache.NMS" />
-    <property name="project.group" value="org.apache.activemq" />
-    <property name="project.version" value="1.8.0" unless="${property::exists('project.version')}" />
-    <property name="project.release.type" value="SNAPSHOT" unless="${property::exists('project.release.type')}" />
-    <property name="project.short_description" value="Apache NMS Class Library" />
-    <property name="project.description" value="Apache NMS (.Net Messaging Library): An abstract interface to Message Oriented Middleware (MOM) providers" />
-    <property name="project.cls.compliant" value="true" />
-    <property name="nunit.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.dll" dynamic="true" />
-
-    <zipfileset id="src.package.contents" basedir="${basedir}">
-        <include name="LICENSE.txt" />
-        <include name="NOTICE.txt" />
-        <include name="nant-common.xml" />
-        <include name="nant.build" />
-        <include name="nant.build" />
-        <include name="nmsprovider*.config" />
-        <include name="vs2008-nms*.csproj" />
-        <include name="vs2008-nms*.csproj" />
-        <include name="vs2008-nms*.sln" />
-        <include name="keyfile/*" />
-        <include name="src/**/*.cs" />
-    </zipfileset>
-
-    <zipfileset id="bin.package.contents" basedir="${basedir}/build">
-        <include name="../LICENSE.txt" />
-        <include name="../NOTICE.txt" />
-        <include name="**/${project.name}*" />
-    </zipfileset>
-
-    <target name="vendor-init" description="Initializes Vendor library from local repository.">
-        <!--
-             Vendor specific info.  The prefix of 'vendor.apache.org' is taken from the property
-             vendor.fileset.names'.  This comma-delimited list is iterated, and properties with
-             well-known suffixes are used to access and copy down vendor file dependencies.
-        -->
-        <property name="vendor.fileset.names" value="vendor.nunit.org" />
-
-        <!-- Property grouping for 'vendor.nunit.org' -->
-        <property name="vendor.nunit.org.name" value="NUnit" />
-        <property name="vendor.nunit.org.group" value="org.nunit" />
-        <property name="vendor.nunit.org.version" value="2.5.8" />
-        <property name="vendor.nunit.org.filenames" value="nunit.framework.dll" />
-    </target>
-
-    <target name="dependency-init" description="Initializes build dependencies">
-        <if test="${current.build.framework == 'net-3.5' or current.build.framework == 'net-4.0' or current.build.framework == 'mono-2.0' or current.build.framework == 'mono-4.0'}">
-            <assemblyfileset failonempty="true" id="dependencies">
-                <include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Core.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Web.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Transactions.dll" />
-            </assemblyfileset>
-        </if>
-        <if test="${current.build.framework != 'net-3.5' and current.build.framework != 'net-4.0' and current.build.framework != 'mono-2.0' and current.build.framework != 'mono-4.0'}">
-            <assemblyfileset failonempty="true" id="dependencies">
-                <include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Web.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
-                <include name="${current.build.framework.assembly.dir}/System.Transactions.dll" />
-            </assemblyfileset>
-        </if>
-
-        <assemblyfileset failonempty="true" id="test.dependencies">
-            <include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
-            <include name="${current.build.framework.assembly.dir}/System.dll" />
-            <include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
-            <include name="${current.build.framework.assembly.dir}/System.Web.dll" />
-            <include name="${build.bin.dir}/${project.name}.dll" />
-            <include name="${nunit.dll}" />
-        </assemblyfileset>
-
-        <fileset id="content.filenames">
-            <include name="LICENSE.txt" />
-            <include name="NOTICE.txt" />
-        </fileset>
-
-        <fileset id="install.filenames">
-            <include name="LICENSE.txt" />
-            <include name="NOTICE.txt" />
-            <include name="${build.bin.dir}/${project.name}.dll" />
-            <include name="${build.bin.dir}/${project.name}.pdb" />
-            <include name="${build.bin.dir}/${project.name}.dll.mdb" />
-            <include name="${build.bin.dir}/${project.name}.Test.dll" />
-            <include name="${build.bin.dir}/${project.name}.Test.pdb" />
-            <include name="${build.bin.dir}/${project.name}.Test.dll.mdb" />
-        </fileset>
-    </target>
-
-    <target name="default" depends="install-all" />
-
-    <!-- Load the common target definitions  -->
-    <include buildfile="${basedir}/nant-common.xml" />
-</project>
diff --git a/nms.sln b/nms.sln
new file mode 100644
index 0000000..8272855
--- /dev/null
+++ b/nms.sln
@@ -0,0 +1,37 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.28917.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nms-api", "src\nms-api\nms-api.csproj", "{6549C694-F8A0-41AE-80A4-2F393BC87C5A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nms-api-test", "test\nms-api-test\nms-api-test.csproj", "{47B76E87-2F31-414B-9570-C26250BF51CF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nms-docs", "docs\nms-docs.csproj", "{5BFA4F92-E39C-412F-BA0D-6E5CB9DBBECF}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{6549C694-F8A0-41AE-80A4-2F393BC87C5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{6549C694-F8A0-41AE-80A4-2F393BC87C5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6549C694-F8A0-41AE-80A4-2F393BC87C5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{6549C694-F8A0-41AE-80A4-2F393BC87C5A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{47B76E87-2F31-414B-9570-C26250BF51CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{47B76E87-2F31-414B-9570-C26250BF51CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{47B76E87-2F31-414B-9570-C26250BF51CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{47B76E87-2F31-414B-9570-C26250BF51CF}.Release|Any CPU.Build.0 = Release|Any CPU
+		{5BFA4F92-E39C-412F-BA0D-6E5CB9DBBECF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{5BFA4F92-E39C-412F-BA0D-6E5CB9DBBECF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{5BFA4F92-E39C-412F-BA0D-6E5CB9DBBECF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{5BFA4F92-E39C-412F-BA0D-6E5CB9DBBECF}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {56A30ED4-C3B2-42E6-9BFE-383835662642}
+	EndGlobalSection
+EndGlobal
diff --git a/package.ps1 b/package.ps1
index 9dc16f1..07b47b8 100644
--- a/package.ps1
+++ b/package.ps1
@@ -15,62 +15,39 @@
 
 $pkgname = "Apache.NMS"
 $pkgver = "1.8-SNAPSHOT"
-$configurations = "release", "debug"
-$frameworks = "mono-2.0", "net-2.0", "net-3.5", "net-4.0", "netcf-2.0", "netcf-3.5", "netstandard2.0"
+$frameworks = "net35", "net40", "netstandard2.0"
 
 write-progress "Creating package directory." "Initializing..."
-if(!(test-path package))
-{
-    md package
+if (!(test-path package)) {
+    mkdir package
 }
 
-if(test-path build)
-{
-    pushd build
+if (test-path build) {
+    Push-Location build
 
     $pkgdir = "..\package"
 
     write-progress "Packaging Application files." "Scanning..."
     $zipfile = "$pkgdir\$pkgname-$pkgver-bin.zip"
-    zip -9 -u -j "$zipfile" ..\LICENSE.txt
-    zip -9 -u -j "$zipfile" ..\NOTICE.txt
-    foreach($configuration in $configurations)
-    {
-        foreach($framework in $frameworks)
-        {
-            zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.dll"
-			if($framework -ieq "netstandard2.0") {
-				zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.xml" 
-			} else {
-				zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.deps.json"
-			}
-            zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.Test.dll"
-			if($framework -ieq "netstandard2.0") {
-				zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.Test.xml"
-			} else {
-				zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.Test.deps.json"
-			}
-            if($framework -ieq "mono-2.0")
-            {
-                zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.dll.mdb"
-                zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.Test.dll.mdb"
-            }
-            else
-            {
-                zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.pdb"
-                zip -9 -u "$zipfile" "$framework\$configuration\$pkgname.Test.pdb"
-            }
-        }
+
+    Compress-Archive -Path ..\LICENSE.txt, ..\NOTICE.txt -Update -DestinationPath $zipfile    
+    
+    foreach ($framework in $frameworks) {
+        Compress-Archive -Path $framework -Update -DestinationPath $zipfile
     }
 
-    popd
+    Pop-Location
 }
 
 write-progress "Packaging Source code files." "Scanning..."
 $pkgdir = "package"
 $zipfile = "$pkgdir\$pkgname-$pkgver-src.zip"
 
-zip -9 -u "$zipfile" LICENSE.txt NOTICE.txt nant-common.xml nant.build package.ps1 vs2008-nms-test.csproj vs2008-nms.csproj vs2008-nms.sln
-zip -9 -u -r "$zipfile" keyfile src
+Compress-Archive -Path LICENSE.txt, NOTICE.txt, keyfile, nms.sln, package.ps1 -Update -DestinationPath $zipfile
+
+# clean up debug artifacts if there are any
+Get-ChildItem src, test -Include bin, obj -Recurse | Remove-Item -Recurse
+
+Compress-Archive -Path src, test -Update -DestinationPath $zipfile
 
-write-progress -Completed "Packaging" "Complete."
+write-progress -Completed "Packaging" "Complete."
\ No newline at end of file
diff --git a/src/main/ndoc/NamespaceSummary.xml b/src/main/ndoc/NamespaceSummary.xml
deleted file mode 100644
index b8e19d5..0000000
--- a/src/main/ndoc/NamespaceSummary.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<!--
-    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.
--->
-<namespaces>
-    <namespace name="NMS">
-        The <b>NMS</b> namespace defines the .Net Message System API which is an interface to messaging systems rather like JMS is for Java.
-    </namespace>
-</namespaces>
diff --git a/src/main/sandcastle/feedback_content.xml b/src/main/sandcastle/feedback_content.xml
deleted file mode 100644
index ee30a12..0000000
--- a/src/main/sandcastle/feedback_content.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<content xml:space="preserve">
-
-  <item id="fb_alias">activemq.docs@apache.org</item>
-  <item id="fb_product"></item>
-  <item id="fb_deliverable"></item>
-
-  <item id="fb_subject">Customer%20Feedback</item>
-  <item id="fb_body">%0\dThank%20you%20for%20your%20feedback.%20The%20developer%20writing%20teams%20use%20your%20feedback%20to%20improve%20documentation.%20While%20we%20are%20reviewing%20your%20feedback,%20we%20may%20send%20you%20e-mail%20to%20ask%20for%20clarification%20or%20feedback%20on%20a%20solution.%20We%20do%20not%20use%20your%20e-mail%20address%20for%20any%20other%20purpose.%0\d</item>
- 
-   <item id="fb_headerFeedBack">Send Feedback</item>
-  
-
-   <!-- feedback values for sandcastle scenario -->
-
-   <item id="feedback_alias"></item>
-   <item id="feedback_product"></item>
-   <item id="feedback_deliverable"></item>
-   <item id="feedback_fileVersion"></item>
-   <item id="feedback_topicVersion"></item>
-   <item id="feedback_body"></item>
-   <item id="feedback_subject"></item>
-
-   <item id="fb_Introduction">We value your feedback. To rate this topic and send feedback about this topic to the documentation team, click a rating, and then click <b>Send Feedback</b>. For assistance with support issues, refer to the technical support information included with the product.</item>
-
-   <item id="fb_Send">Send Feedback</item>
-   <item id="fb_Poor">Poor</item>
-   <item id="fb_Excellent">Outstanding</item>
-   <item id="fb_EnterFeedbackText">To e-mail your feedback, click here:</item>
-   <item id="fb_Title">Documentation Feedback</item>
-   <item id="fb_altIcon">Display feedback instructions at the bottom of the page.</item>
-
-</content>
\ No newline at end of file
diff --git a/src/main/csharp/IBytesMessage.cs b/src/nms-api/IBytesMessage.cs
similarity index 100%
rename from src/main/csharp/IBytesMessage.cs
rename to src/nms-api/IBytesMessage.cs
diff --git a/src/main/csharp/IConnection.cs b/src/nms-api/IConnection.cs
similarity index 100%
rename from src/main/csharp/IConnection.cs
rename to src/nms-api/IConnection.cs
diff --git a/src/main/csharp/IConnectionFactory.cs b/src/nms-api/IConnectionFactory.cs
similarity index 100%
rename from src/main/csharp/IConnectionFactory.cs
rename to src/nms-api/IConnectionFactory.cs
diff --git a/src/main/csharp/IConnectionMetaData.cs b/src/nms-api/IConnectionMetaData.cs
similarity index 100%
rename from src/main/csharp/IConnectionMetaData.cs
rename to src/nms-api/IConnectionMetaData.cs
diff --git a/src/main/csharp/IDestination.cs b/src/nms-api/IDestination.cs
similarity index 100%
rename from src/main/csharp/IDestination.cs
rename to src/nms-api/IDestination.cs
diff --git a/src/main/csharp/IMapMessage.cs b/src/nms-api/IMapMessage.cs
similarity index 100%
rename from src/main/csharp/IMapMessage.cs
rename to src/nms-api/IMapMessage.cs
diff --git a/src/main/csharp/IMessage.cs b/src/nms-api/IMessage.cs
similarity index 100%
rename from src/main/csharp/IMessage.cs
rename to src/nms-api/IMessage.cs
diff --git a/src/main/csharp/IMessageConsumer.cs b/src/nms-api/IMessageConsumer.cs
similarity index 100%
rename from src/main/csharp/IMessageConsumer.cs
rename to src/nms-api/IMessageConsumer.cs
diff --git a/src/main/csharp/IMessageProducer.cs b/src/nms-api/IMessageProducer.cs
similarity index 100%
rename from src/main/csharp/IMessageProducer.cs
rename to src/nms-api/IMessageProducer.cs
diff --git a/src/main/csharp/INetTxConnection.cs b/src/nms-api/INetTxConnection.cs
similarity index 100%
rename from src/main/csharp/INetTxConnection.cs
rename to src/nms-api/INetTxConnection.cs
diff --git a/src/main/csharp/INetTxConnectionFactory.cs b/src/nms-api/INetTxConnectionFactory.cs
similarity index 100%
rename from src/main/csharp/INetTxConnectionFactory.cs
rename to src/nms-api/INetTxConnectionFactory.cs
diff --git a/src/main/csharp/INetTxSession.cs b/src/nms-api/INetTxSession.cs
similarity index 100%
rename from src/main/csharp/INetTxSession.cs
rename to src/nms-api/INetTxSession.cs
diff --git a/src/main/csharp/IObjectMessage.cs b/src/nms-api/IObjectMessage.cs
similarity index 100%
rename from src/main/csharp/IObjectMessage.cs
rename to src/nms-api/IObjectMessage.cs
diff --git a/src/main/csharp/IPrimitiveMap.cs b/src/nms-api/IPrimitiveMap.cs
similarity index 100%
rename from src/main/csharp/IPrimitiveMap.cs
rename to src/nms-api/IPrimitiveMap.cs
diff --git a/src/main/csharp/IQueue.cs b/src/nms-api/IQueue.cs
similarity index 100%
rename from src/main/csharp/IQueue.cs
rename to src/nms-api/IQueue.cs
diff --git a/src/main/csharp/IQueueBrowser.cs b/src/nms-api/IQueueBrowser.cs
similarity index 100%
rename from src/main/csharp/IQueueBrowser.cs
rename to src/nms-api/IQueueBrowser.cs
diff --git a/src/main/csharp/IRedeliveryPolicy.cs b/src/nms-api/IRedeliveryPolicy.cs
similarity index 100%
rename from src/main/csharp/IRedeliveryPolicy.cs
rename to src/nms-api/IRedeliveryPolicy.cs
diff --git a/src/main/csharp/ISession.cs b/src/nms-api/ISession.cs
similarity index 100%
rename from src/main/csharp/ISession.cs
rename to src/nms-api/ISession.cs
diff --git a/src/main/csharp/IStartable.cs b/src/nms-api/IStartable.cs
similarity index 100%
rename from src/main/csharp/IStartable.cs
rename to src/nms-api/IStartable.cs
diff --git a/src/main/csharp/IStoppable.cs b/src/nms-api/IStoppable.cs
similarity index 100%
rename from src/main/csharp/IStoppable.cs
rename to src/nms-api/IStoppable.cs
diff --git a/src/main/csharp/IStreamMessage.cs b/src/nms-api/IStreamMessage.cs
similarity index 100%
rename from src/main/csharp/IStreamMessage.cs
rename to src/nms-api/IStreamMessage.cs
diff --git a/src/main/csharp/ITemporaryQueue.cs b/src/nms-api/ITemporaryQueue.cs
similarity index 100%
rename from src/main/csharp/ITemporaryQueue.cs
rename to src/nms-api/ITemporaryQueue.cs
diff --git a/src/main/csharp/ITemporaryTopic.cs b/src/nms-api/ITemporaryTopic.cs
similarity index 100%
rename from src/main/csharp/ITemporaryTopic.cs
rename to src/nms-api/ITemporaryTopic.cs
diff --git a/src/main/csharp/ITextMessage.cs b/src/nms-api/ITextMessage.cs
similarity index 100%
rename from src/main/csharp/ITextMessage.cs
rename to src/nms-api/ITextMessage.cs
diff --git a/src/main/csharp/ITopic.cs b/src/nms-api/ITopic.cs
similarity index 100%
rename from src/main/csharp/ITopic.cs
rename to src/nms-api/ITopic.cs
diff --git a/src/main/csharp/ITrace.cs b/src/nms-api/ITrace.cs
similarity index 100%
rename from src/main/csharp/ITrace.cs
rename to src/nms-api/ITrace.cs
diff --git a/src/main/csharp/IllegalStateException.cs b/src/nms-api/IllegalStateException.cs
similarity index 100%
rename from src/main/csharp/IllegalStateException.cs
rename to src/nms-api/IllegalStateException.cs
diff --git a/src/main/csharp/InvalidClientIDException.cs b/src/nms-api/InvalidClientIDException.cs
similarity index 100%
rename from src/main/csharp/InvalidClientIDException.cs
rename to src/nms-api/InvalidClientIDException.cs
diff --git a/src/main/csharp/InvalidDestinationException.cs b/src/nms-api/InvalidDestinationException.cs
similarity index 100%
rename from src/main/csharp/InvalidDestinationException.cs
rename to src/nms-api/InvalidDestinationException.cs
diff --git a/src/main/csharp/InvalidSelectorException.cs b/src/nms-api/InvalidSelectorException.cs
similarity index 100%
rename from src/main/csharp/InvalidSelectorException.cs
rename to src/nms-api/InvalidSelectorException.cs
diff --git a/src/main/csharp/MessageConsumerExtensions.cs b/src/nms-api/MessageConsumerExtensions.cs
similarity index 100%
rename from src/main/csharp/MessageConsumerExtensions.cs
rename to src/nms-api/MessageConsumerExtensions.cs
diff --git a/src/main/csharp/MessageEOFException.cs b/src/nms-api/MessageEOFException.cs
similarity index 100%
rename from src/main/csharp/MessageEOFException.cs
rename to src/nms-api/MessageEOFException.cs
diff --git a/src/main/csharp/MessageExtensions.cs b/src/nms-api/MessageExtensions.cs
similarity index 100%
rename from src/main/csharp/MessageExtensions.cs
rename to src/nms-api/MessageExtensions.cs
diff --git a/src/main/csharp/MessageFormatException.cs b/src/nms-api/MessageFormatException.cs
similarity index 100%
rename from src/main/csharp/MessageFormatException.cs
rename to src/nms-api/MessageFormatException.cs
diff --git a/src/main/csharp/MessageNotReadableException.cs b/src/nms-api/MessageNotReadableException.cs
similarity index 100%
rename from src/main/csharp/MessageNotReadableException.cs
rename to src/nms-api/MessageNotReadableException.cs
diff --git a/src/main/csharp/MessageNotWriteableException.cs b/src/nms-api/MessageNotWriteableException.cs
similarity index 100%
rename from src/main/csharp/MessageNotWriteableException.cs
rename to src/nms-api/MessageNotWriteableException.cs
diff --git a/src/main/csharp/MessageProducerExtensions.cs b/src/nms-api/MessageProducerExtensions.cs
similarity index 100%
rename from src/main/csharp/MessageProducerExtensions.cs
rename to src/nms-api/MessageProducerExtensions.cs
diff --git a/src/main/csharp/NMSConnectionException.cs b/src/nms-api/NMSConnectionException.cs
similarity index 100%
rename from src/main/csharp/NMSConnectionException.cs
rename to src/nms-api/NMSConnectionException.cs
diff --git a/src/main/csharp/NMSConnectionFactory.cs b/src/nms-api/NMSConnectionFactory.cs
similarity index 100%
rename from src/main/csharp/NMSConnectionFactory.cs
rename to src/nms-api/NMSConnectionFactory.cs
diff --git a/src/main/csharp/NMSConstants.cs b/src/nms-api/NMSConstants.cs
similarity index 100%
rename from src/main/csharp/NMSConstants.cs
rename to src/nms-api/NMSConstants.cs
diff --git a/src/main/csharp/NMSException.cs b/src/nms-api/NMSException.cs
similarity index 100%
rename from src/main/csharp/NMSException.cs
rename to src/nms-api/NMSException.cs
diff --git a/src/main/csharp/NMSSecurityException.cs b/src/nms-api/NMSSecurityException.cs
similarity index 100%
rename from src/main/csharp/NMSSecurityException.cs
rename to src/nms-api/NMSSecurityException.cs
diff --git a/src/main/csharp/ResourceAllocationException.cs b/src/nms-api/ResourceAllocationException.cs
similarity index 100%
rename from src/main/csharp/ResourceAllocationException.cs
rename to src/nms-api/ResourceAllocationException.cs
diff --git a/src/main/csharp/SessionExtensions.cs b/src/nms-api/SessionExtensions.cs
similarity index 100%
rename from src/main/csharp/SessionExtensions.cs
rename to src/nms-api/SessionExtensions.cs
diff --git a/src/main/csharp/Tracer.cs b/src/nms-api/Tracer.cs
similarity index 100%
rename from src/main/csharp/Tracer.cs
rename to src/nms-api/Tracer.cs
diff --git a/src/main/csharp/TransactionInProgressException.cs b/src/nms-api/TransactionInProgressException.cs
similarity index 100%
rename from src/main/csharp/TransactionInProgressException.cs
rename to src/nms-api/TransactionInProgressException.cs
diff --git a/src/main/csharp/TransactionRolledBackException.cs b/src/nms-api/TransactionRolledBackException.cs
similarity index 100%
rename from src/main/csharp/TransactionRolledBackException.cs
rename to src/nms-api/TransactionRolledBackException.cs
diff --git a/src/main/csharp/Util/Atomic.cs b/src/nms-api/Util/Atomic.cs
similarity index 100%
rename from src/main/csharp/Util/Atomic.cs
rename to src/nms-api/Util/Atomic.cs
diff --git a/src/main/csharp/Util/Convert.cs b/src/nms-api/Util/Convert.cs
similarity index 100%
rename from src/main/csharp/Util/Convert.cs
rename to src/nms-api/Util/Convert.cs
diff --git a/src/main/csharp/Util/CountDownLatch.cs b/src/nms-api/Util/CountDownLatch.cs
similarity index 100%
rename from src/main/csharp/Util/CountDownLatch.cs
rename to src/nms-api/Util/CountDownLatch.cs
diff --git a/src/main/csharp/Util/DateUtils.cs b/src/nms-api/Util/DateUtils.cs
similarity index 100%
rename from src/main/csharp/Util/DateUtils.cs
rename to src/nms-api/Util/DateUtils.cs
diff --git a/src/main/csharp/Util/EndianBinaryReader.cs b/src/nms-api/Util/EndianBinaryReader.cs
similarity index 100%
rename from src/main/csharp/Util/EndianBinaryReader.cs
rename to src/nms-api/Util/EndianBinaryReader.cs
diff --git a/src/main/csharp/Util/EndianBinaryWriter.cs b/src/nms-api/Util/EndianBinaryWriter.cs
similarity index 100%
rename from src/main/csharp/Util/EndianBinaryWriter.cs
rename to src/nms-api/Util/EndianBinaryWriter.cs
diff --git a/src/main/csharp/Util/EndianSupport.cs b/src/nms-api/Util/EndianSupport.cs
similarity index 100%
rename from src/main/csharp/Util/EndianSupport.cs
rename to src/nms-api/Util/EndianSupport.cs
diff --git a/src/main/csharp/Util/MessagePropertyIntercepter.cs b/src/nms-api/Util/MessagePropertyIntercepter.cs
similarity index 100%
rename from src/main/csharp/Util/MessagePropertyIntercepter.cs
rename to src/nms-api/Util/MessagePropertyIntercepter.cs
diff --git a/src/main/csharp/Util/MessageTransformation.cs b/src/nms-api/Util/MessageTransformation.cs
similarity index 100%
rename from src/main/csharp/Util/MessageTransformation.cs
rename to src/nms-api/Util/MessageTransformation.cs
diff --git a/src/main/csharp/Util/NMSExceptionSupport.cs b/src/nms-api/Util/NMSExceptionSupport.cs
similarity index 100%
rename from src/main/csharp/Util/NMSExceptionSupport.cs
rename to src/nms-api/Util/NMSExceptionSupport.cs
diff --git a/src/main/csharp/Util/PrimitiveMap.cs b/src/nms-api/Util/PrimitiveMap.cs
similarity index 100%
rename from src/main/csharp/Util/PrimitiveMap.cs
rename to src/nms-api/Util/PrimitiveMap.cs
diff --git a/src/main/csharp/Util/PrimitiveMapInterceptor.cs b/src/nms-api/Util/PrimitiveMapInterceptor.cs
similarity index 100%
rename from src/main/csharp/Util/PrimitiveMapInterceptor.cs
rename to src/nms-api/Util/PrimitiveMapInterceptor.cs
diff --git a/src/main/csharp/Util/SessionUtils.cs b/src/nms-api/Util/SessionUtils.cs
similarity index 100%
rename from src/main/csharp/Util/SessionUtils.cs
rename to src/nms-api/Util/SessionUtils.cs
diff --git a/src/main/csharp/Util/URISupport.cs b/src/nms-api/Util/URISupport.cs
similarity index 100%
rename from src/main/csharp/Util/URISupport.cs
rename to src/nms-api/Util/URISupport.cs
diff --git a/src/main/csharp/Util/XmlUtils.cs b/src/nms-api/Util/XmlUtils.cs
similarity index 100%
rename from src/main/csharp/Util/XmlUtils.cs
rename to src/nms-api/Util/XmlUtils.cs
diff --git a/src/nms-api/nms-api.csproj b/src/nms-api/nms-api.csproj
new file mode 100644
index 0000000..50c26d3
--- /dev/null
+++ b/src/nms-api/nms-api.csproj
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+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.
+  -->
+<Project Sdk="Microsoft.NET.Sdk">
+  <PropertyGroup>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <OutputType>Library</OutputType>
+    <TargetFrameworks>net35;net40;netstandard2.0</TargetFrameworks>
+    <RootNamespace>Apache.NMS</RootNamespace>
+    <AssemblyName>Apache.NMS</AssemblyName>
+  </PropertyGroup>
+
+  <PropertyGroup Condition="'$(Configuration)'=='Release'">
+    <OutputPath>..\..\build\</OutputPath>
+    <AppendTargetFrameworkToOutputPath>true</AppendTargetFrameworkToOutputPath>
+  </PropertyGroup>
+
+  <PropertyGroup>
+    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
+    <PackageId>Apache.NMS</PackageId>
+    <Version>1.8.0</Version>
+    <Authors>Apache ActiveMQ</Authors>
+    <Company>Apache Software Foundation</Company>
+    <Product>Apache NMS API</Product>
+    <Description>Apache NMS (.Net Standard Messaging Library): An abstract interface to Message Oriented Middleware (MOM) providers</Description>
+    <Copyright>Copyright (C) 2005-2019 Apache Software Foundation</Copyright>
+    <PackageProjectUrl>https://activemq.apache.org/components/nms/</PackageProjectUrl>
+    <PackageLicense>https://github.com/apache/activemq-nms-api/blob/master/LICENSE.txt</PackageLicense>
+    <PackageIconUrl>https://activemq.apache.org/assets/img/activemq_logo_icon.png</PackageIconUrl>
+    <RepositoryUrl>https://github.com/apache/activemq-nms-api</RepositoryUrl>
+    <RepositoryType>git</RepositoryType>
+    <PackageTags>apache;activemq;nms;api;net;messaging</PackageTags>
+  </PropertyGroup>
+
+  <ItemGroup Condition=" '$(TargetFramework)' == 'net35' ">
+    <Reference Include="System.Transactions" />
+    <Reference Include="System.Web" />
+  </ItemGroup>
+
+  <ItemGroup Condition=" '$(TargetFramework)' == 'net40' ">
+    <Reference Include="System.Transactions" />
+    <Reference Include="System.Web" />
+  </ItemGroup>
+
+  <PropertyGroup>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\..\keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
+  </PropertyGroup>
+</Project>
diff --git a/src/main/csharp/policies/RedeliveryPolicy.cs b/src/nms-api/policies/RedeliveryPolicy.cs
similarity index 100%
rename from src/main/csharp/policies/RedeliveryPolicy.cs
rename to src/nms-api/policies/RedeliveryPolicy.cs
diff --git a/src/test/csharp/AsyncConsumeTest.cs b/test/nms-api-test/AsyncConsumeTest.cs
similarity index 100%
rename from src/test/csharp/AsyncConsumeTest.cs
rename to test/nms-api-test/AsyncConsumeTest.cs
diff --git a/src/test/csharp/BadConsumeTest.cs b/test/nms-api-test/BadConsumeTest.cs
similarity index 100%
rename from src/test/csharp/BadConsumeTest.cs
rename to test/nms-api-test/BadConsumeTest.cs
diff --git a/src/test/csharp/BytesMessageTest.cs b/test/nms-api-test/BytesMessageTest.cs
similarity index 100%
rename from src/test/csharp/BytesMessageTest.cs
rename to test/nms-api-test/BytesMessageTest.cs
diff --git a/src/test/csharp/Commands/BytesMessage.cs b/test/nms-api-test/Commands/BytesMessage.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/BytesMessage.cs
rename to test/nms-api-test/Commands/BytesMessage.cs
diff --git a/src/test/csharp/Commands/Destination.cs b/test/nms-api-test/Commands/Destination.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/Destination.cs
rename to test/nms-api-test/Commands/Destination.cs
diff --git a/src/test/csharp/Commands/MapMessage.cs b/test/nms-api-test/Commands/MapMessage.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/MapMessage.cs
rename to test/nms-api-test/Commands/MapMessage.cs
diff --git a/src/test/csharp/Commands/Message.cs b/test/nms-api-test/Commands/Message.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/Message.cs
rename to test/nms-api-test/Commands/Message.cs
diff --git a/src/test/csharp/Commands/ObjectMessage.cs b/test/nms-api-test/Commands/ObjectMessage.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/ObjectMessage.cs
rename to test/nms-api-test/Commands/ObjectMessage.cs
diff --git a/src/test/csharp/Commands/Queue.cs b/test/nms-api-test/Commands/Queue.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/Queue.cs
rename to test/nms-api-test/Commands/Queue.cs
diff --git a/src/test/csharp/Commands/StreamMessage.cs b/test/nms-api-test/Commands/StreamMessage.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/StreamMessage.cs
rename to test/nms-api-test/Commands/StreamMessage.cs
diff --git a/src/test/csharp/Commands/TempDestination.cs b/test/nms-api-test/Commands/TempDestination.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/TempDestination.cs
rename to test/nms-api-test/Commands/TempDestination.cs
diff --git a/src/test/csharp/Commands/TempQueue.cs b/test/nms-api-test/Commands/TempQueue.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/TempQueue.cs
rename to test/nms-api-test/Commands/TempQueue.cs
diff --git a/src/test/csharp/Commands/TempTopic.cs b/test/nms-api-test/Commands/TempTopic.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/TempTopic.cs
rename to test/nms-api-test/Commands/TempTopic.cs
diff --git a/src/test/csharp/Commands/TextMessage.cs b/test/nms-api-test/Commands/TextMessage.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/TextMessage.cs
rename to test/nms-api-test/Commands/TextMessage.cs
diff --git a/src/test/csharp/Commands/Topic.cs b/test/nms-api-test/Commands/Topic.cs
old mode 100755
new mode 100644
similarity index 100%
rename from src/test/csharp/Commands/Topic.cs
rename to test/nms-api-test/Commands/Topic.cs
diff --git a/src/test/csharp/ConnectionTest.cs b/test/nms-api-test/ConnectionTest.cs
similarity index 100%
rename from src/test/csharp/ConnectionTest.cs
rename to test/nms-api-test/ConnectionTest.cs
diff --git a/src/test/csharp/ConsumerTest.cs b/test/nms-api-test/ConsumerTest.cs
similarity index 100%
rename from src/test/csharp/ConsumerTest.cs
rename to test/nms-api-test/ConsumerTest.cs
diff --git a/src/test/csharp/DurableTest.cs b/test/nms-api-test/DurableTest.cs
similarity index 100%
rename from src/test/csharp/DurableTest.cs
rename to test/nms-api-test/DurableTest.cs
diff --git a/src/test/csharp/EndianBinaryReaderTest.cs b/test/nms-api-test/EndianBinaryReaderTest.cs
similarity index 100%
rename from src/test/csharp/EndianBinaryReaderTest.cs
rename to test/nms-api-test/EndianBinaryReaderTest.cs
diff --git a/src/test/csharp/EndianBinaryWriterTest.cs b/test/nms-api-test/EndianBinaryWriterTest.cs
similarity index 100%
rename from src/test/csharp/EndianBinaryWriterTest.cs
rename to test/nms-api-test/EndianBinaryWriterTest.cs
diff --git a/src/test/csharp/EndianTest.cs b/test/nms-api-test/EndianTest.cs
similarity index 100%
rename from src/test/csharp/EndianTest.cs
rename to test/nms-api-test/EndianTest.cs
diff --git a/src/test/csharp/ForgeinMessageTransformationTest.cs b/test/nms-api-test/ForgeinMessageTransformationTest.cs
similarity index 100%
rename from src/test/csharp/ForgeinMessageTransformationTest.cs
rename to test/nms-api-test/ForgeinMessageTransformationTest.cs
diff --git a/src/test/csharp/MapMessageTest.cs b/test/nms-api-test/MapMessageTest.cs
similarity index 100%
rename from src/test/csharp/MapMessageTest.cs
rename to test/nms-api-test/MapMessageTest.cs
diff --git a/src/test/csharp/MessageSelectorTest.cs b/test/nms-api-test/MessageSelectorTest.cs
similarity index 100%
rename from src/test/csharp/MessageSelectorTest.cs
rename to test/nms-api-test/MessageSelectorTest.cs
diff --git a/src/test/csharp/MessageTest.cs b/test/nms-api-test/MessageTest.cs
similarity index 100%
rename from src/test/csharp/MessageTest.cs
rename to test/nms-api-test/MessageTest.cs
diff --git a/src/test/csharp/MessageTransformerTest.cs b/test/nms-api-test/MessageTransformerTest.cs
similarity index 100%
rename from src/test/csharp/MessageTransformerTest.cs
rename to test/nms-api-test/MessageTransformerTest.cs
diff --git a/src/test/csharp/NMSPropertyTest.cs b/test/nms-api-test/NMSPropertyTest.cs
similarity index 100%
rename from src/test/csharp/NMSPropertyTest.cs
rename to test/nms-api-test/NMSPropertyTest.cs
diff --git a/src/test/csharp/NMSTestSupport.cs b/test/nms-api-test/NMSTestSupport.cs
similarity index 100%
rename from src/test/csharp/NMSTestSupport.cs
rename to test/nms-api-test/NMSTestSupport.cs
diff --git a/src/test/csharp/NmsTracer.cs b/test/nms-api-test/NmsTracer.cs
similarity index 100%
rename from src/test/csharp/NmsTracer.cs
rename to test/nms-api-test/NmsTracer.cs
diff --git a/src/test/csharp/PrimitiveMapTest.cs b/test/nms-api-test/PrimitiveMapTest.cs
similarity index 100%
rename from src/test/csharp/PrimitiveMapTest.cs
rename to test/nms-api-test/PrimitiveMapTest.cs
diff --git a/src/test/csharp/ProducerTest.cs b/test/nms-api-test/ProducerTest.cs
similarity index 100%
rename from src/test/csharp/ProducerTest.cs
rename to test/nms-api-test/ProducerTest.cs
diff --git a/src/test/csharp/RedeliveryPolicyTest.cs b/test/nms-api-test/RedeliveryPolicyTest.cs
similarity index 100%
rename from src/test/csharp/RedeliveryPolicyTest.cs
rename to test/nms-api-test/RedeliveryPolicyTest.cs
diff --git a/src/test/csharp/RequestResponseTest.cs b/test/nms-api-test/RequestResponseTest.cs
similarity index 100%
rename from src/test/csharp/RequestResponseTest.cs
rename to test/nms-api-test/RequestResponseTest.cs
diff --git a/src/test/csharp/StreamMessageTest.cs b/test/nms-api-test/StreamMessageTest.cs
similarity index 100%
rename from src/test/csharp/StreamMessageTest.cs
rename to test/nms-api-test/StreamMessageTest.cs
diff --git a/src/test/csharp/TempDestinationDeletionTest.cs b/test/nms-api-test/TempDestinationDeletionTest.cs
similarity index 100%
rename from src/test/csharp/TempDestinationDeletionTest.cs
rename to test/nms-api-test/TempDestinationDeletionTest.cs
diff --git a/src/test/csharp/TempDestinationTest.cs b/test/nms-api-test/TempDestinationTest.cs
similarity index 100%
rename from src/test/csharp/TempDestinationTest.cs
rename to test/nms-api-test/TempDestinationTest.cs
diff --git a/src/test/csharp/TextMessage.cs b/test/nms-api-test/TextMessage.cs
similarity index 100%
rename from src/test/csharp/TextMessage.cs
rename to test/nms-api-test/TextMessage.cs
diff --git a/src/test/csharp/TransactionTest.cs b/test/nms-api-test/TransactionTest.cs
similarity index 100%
rename from src/test/csharp/TransactionTest.cs
rename to test/nms-api-test/TransactionTest.cs
diff --git a/src/test/csharp/URISupportTest.cs b/test/nms-api-test/URISupportTest.cs
similarity index 100%
rename from src/test/csharp/URISupportTest.cs
rename to test/nms-api-test/URISupportTest.cs
diff --git a/src/test/csharp/XmlMessageTest.cs b/test/nms-api-test/XmlMessageTest.cs
similarity index 100%
rename from src/test/csharp/XmlMessageTest.cs
rename to test/nms-api-test/XmlMessageTest.cs
diff --git a/test/nms-api-test/nms-api-test.csproj b/test/nms-api-test/nms-api-test.csproj
new file mode 100644
index 0000000..9747c6b
--- /dev/null
+++ b/test/nms-api-test/nms-api-test.csproj
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+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.
+  -->
+<Project Sdk="Microsoft.NET.Sdk">
+  <PropertyGroup>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <OutputType>Library</OutputType>
+    <TargetFrameworks>net35;net40;netstandard2.0</TargetFrameworks>
+    <RootNamespace>Apache.NMS.Test</RootNamespace>
+    <AssemblyName>Apache.NMS.Test</AssemblyName>
+  </PropertyGroup>
+
+  <PropertyGroup Condition="'$(Configuration)'=='Release'">
+    <OutputPath>..\..\build\</OutputPath>
+    <AppendTargetFrameworkToOutputPath>true</AppendTargetFrameworkToOutputPath>
+  </PropertyGroup>
+
+  <PropertyGroup>
+    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
+    <PackageId>Apache.NMS.Test</PackageId>
+    <Version>1.8.0</Version>
+    <Authors>Apache ActiveMQ</Authors>
+    <Company>Apache Software Foundation</Company>
+    <Product>Apache NMS API</Product>
+    <Description>Apache NMS (.Net Standard Messaging Library) Test Suite</Description>
+    <Copyright>Copyright (C) 2005-2019 Apache Software Foundation</Copyright>
+    <PackageProjectUrl>https://activemq.apache.org/components/nms/</PackageProjectUrl>
+    <PackageLicense>https://github.com/apache/activemq-nms-api/blob/master/LICENSE.txt</PackageLicense>
+    <PackageIconUrl>https://activemq.apache.org/assets/img/activemq_logo_icon.png</PackageIconUrl>
+    <RepositoryUrl>https://github.com/apache/activemq-nms-api</RepositoryUrl>
+    <RepositoryType>git</RepositoryType>
+    <PackageTags>apache;activemq;nms;api;net;test;messaging</PackageTags>
+  </PropertyGroup>
+
+  <PropertyGroup>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\..\keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="NUnit" Version="3.12.0" />
+  </ItemGroup>
+
+  <ItemGroup Condition=" '$(TargetFramework)' == 'net35'">
+    <Reference Include="System.Web" />
+  </ItemGroup>
+
+  <ItemGroup Condition=" '$(TargetFramework)' == 'net40'">
+    <Reference Include="System.Web" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\src\nms-api\nms-api.csproj" />
+  </ItemGroup>
+</Project>
diff --git a/vs2008-nms-test.csproj b/vs2008-nms-test.csproj
deleted file mode 100644
index b368674..0000000
--- a/vs2008-nms-test.csproj
+++ /dev/null
@@ -1,163 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS.Test</RootNamespace>
-    <AssemblyName>Apache.NMS.Test</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>2.0</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-2.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <NoWarn>3016</NoWarn>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-2.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <NoWarn>3016</NoWarn>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>lib\NUnit\net-3.5\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\test\csharp\AsyncConsumeTest.cs" />
-    <Compile Include="src\test\csharp\BadConsumeTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\BytesMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\Commands\BytesMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Destination.cs" />
-    <Compile Include="src\test\csharp\Commands\MapMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Message.cs" />
-    <Compile Include="src\test\csharp\Commands\ObjectMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Queue.cs" />
-    <Compile Include="src\test\csharp\Commands\StreamMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\TempDestination.cs" />
-    <Compile Include="src\test\csharp\Commands\TempQueue.cs" />
-    <Compile Include="src\test\csharp\Commands\TempTopic.cs" />
-    <Compile Include="src\test\csharp\Commands\TextMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Topic.cs" />
-    <Compile Include="src\test\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\test\csharp\ConnectionTest.cs" />
-    <Compile Include="src\test\csharp\ConsumerTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\DurableTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\EndianBinaryReaderTest.cs" />
-    <Compile Include="src\test\csharp\EndianBinaryWriterTest.cs" />
-    <Compile Include="src\test\csharp\EndianTest.cs" />
-    <Compile Include="src\test\csharp\ForgeinMessageTransformationTest.cs" />
-    <Compile Include="src\test\csharp\MessageTransformerTest.cs" />
-    <Compile Include="src\test\csharp\NMSPropertyTest.cs" />
-    <Compile Include="src\test\csharp\NMSTestSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MapMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageSelectorTest.cs" />
-    <Compile Include="src\test\csharp\NmsTracer.cs" />
-    <Compile Include="src\test\csharp\PrimitiveMapTest.cs" />
-    <Compile Include="src\test\csharp\ProducerTest.cs" />
-    <Compile Include="src\test\csharp\RedeliveryPolicyTest.cs" />
-    <Compile Include="src\test\csharp\RequestResponseTest.cs" />
-    <Compile Include="src\test\csharp\StreamMessageTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationDeletionTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationTest.cs" />
-    <Compile Include="src\test\csharp\TextMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\TransactionTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\URISupportTest.cs" />
-    <Compile Include="src\test\csharp\XmlMessageTest.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="vs2008-nms.csproj">
-      <Project>{300C1716-0674-4D01-8F5D-151E59A504FE}</Project>
-      <Name>vs2008-nms</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.2.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 2.0 %28x86%29</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.0 %28x86%29</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true</PostBuildEvent>
-    <PreBuildEvent>
-    </PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2008-nms.csproj b/vs2008-nms.csproj
deleted file mode 100644
index c22e911..0000000
--- a/vs2008-nms.csproj
+++ /dev/null
@@ -1,135 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{300C1716-0674-4D01-8F5D-151E59A504FE}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS</RootNamespace>
-    <AssemblyName>Apache.NMS</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>2.0</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-2.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-2.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Transactions" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\main\csharp\IBytesMessage.cs" />
-    <Compile Include="src\main\csharp\IConnection.cs" />
-    <Compile Include="src\main\csharp\IConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\IConnectionMetaData.cs" />
-    <Compile Include="src\main\csharp\IDestination.cs" />
-    <Compile Include="src\main\csharp\IllegalStateException.cs" />
-    <Compile Include="src\main\csharp\IMapMessage.cs" />
-    <Compile Include="src\main\csharp\IMessage.cs" />
-    <Compile Include="src\main\csharp\IMessageConsumer.cs" />
-    <Compile Include="src\main\csharp\IMessageProducer.cs" />
-    <Compile Include="src\main\csharp\INetTxConnection.cs" />
-    <Compile Include="src\main\csharp\INetTxConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\INetTxSession.cs" />
-    <Compile Include="src\main\csharp\InvalidClientIDException.cs" />
-    <Compile Include="src\main\csharp\InvalidDestinationException.cs" />
-    <Compile Include="src\main\csharp\InvalidSelectorException.cs" />
-    <Compile Include="src\main\csharp\IObjectMessage.cs" />
-    <Compile Include="src\main\csharp\IPrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\IQueue.cs" />
-    <Compile Include="src\main\csharp\IQueueBrowser.cs" />
-    <Compile Include="src\main\csharp\IRedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ISession.cs" />
-    <Compile Include="src\main\csharp\IStartable.cs" />
-    <Compile Include="src\main\csharp\IStoppable.cs" />
-    <Compile Include="src\main\csharp\IStreamMessage.cs" />
-    <Compile Include="src\main\csharp\ITemporaryQueue.cs" />
-    <Compile Include="src\main\csharp\ITemporaryTopic.cs" />
-    <Compile Include="src\main\csharp\ITextMessage.cs" />
-    <Compile Include="src\main\csharp\ITopic.cs" />
-    <Compile Include="src\main\csharp\ITrace.cs" />
-    <Compile Include="src\main\csharp\MessageConsumerExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageEOFException.cs" />
-    <Compile Include="src\main\csharp\MessageFormatException.cs" />
-    <Compile Include="src\main\csharp\MessageNotReadableException.cs" />
-    <Compile Include="src\main\csharp\MessageNotWriteableException.cs" />
-    <Compile Include="src\main\csharp\MessageProducerExtensions.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionException.cs" />
-    <Compile Include="src\main\csharp\NMSConstants.cs" />
-    <Compile Include="src\main\csharp\NMSException.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\NMSSecurityException.cs" />
-    <Compile Include="src\main\csharp\policies\RedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ResourceAllocationException.cs" />
-    <Compile Include="src\main\csharp\SessionExtensions.cs" />
-    <Compile Include="src\main\csharp\Tracer.cs" />
-    <Compile Include="src\main\csharp\TransactionInProgressException.cs" />
-    <Compile Include="src\main\csharp\TransactionRolledBackException.cs" />
-    <Compile Include="src\main\csharp\Util\Atomic.cs" />
-    <Compile Include="src\main\csharp\Util\Convert.cs" />
-    <Compile Include="src\main\csharp\Util\CountDownLatch.cs" />
-    <Compile Include="src\main\csharp\Util\DateUtils.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryReader.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryWriter.cs" />
-    <Compile Include="src\main\csharp\Util\EndianSupport.cs" />
-    <Compile Include="src\main\csharp\Util\MessagePropertyIntercepter.cs" />
-    <Compile Include="src\main\csharp\Util\MessageTransformation.cs" />
-    <Compile Include="src\main\csharp\Util\NMSExceptionSupport.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMapInterceptor.cs" />
-    <Compile Include="src\main\csharp\Util\SessionUtils.cs" />
-    <Compile Include="src\main\csharp\Util\URISupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\Util\XmlUtils.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="LICENSE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="NOTICE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo download-vendor -D:vendor.build.config=$(ConfigurationName) -D:vendor.build.framework=net-2.0</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2008-nms.sln b/vs2008-nms.sln
deleted file mode 100644
index ac37969..0000000
--- a/vs2008-nms.sln
+++ /dev/null
@@ -1,30 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2008-nms", "vs2008-nms.csproj", "{300C1716-0674-4D01-8F5D-151E59A504FE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2008-nms-test", "vs2008-nms-test.csproj", "{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}"
-EndProject
-Global
-	GlobalSection(SubversionScc) = preSolution
-		Svn-Managed = True
-		Manager = AnkhSVN - Subversion Support for Visual Studio
-	EndGlobalSection
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{300C1716-0674-4D01-8F5D-151E59A504FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{300C1716-0674-4D01-8F5D-151E59A504FE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{300C1716-0674-4D01-8F5D-151E59A504FE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{300C1716-0674-4D01-8F5D-151E59A504FE}.Release|Any CPU.Build.0 = Release|Any CPU
-		{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{2F3ABCF5-EE87-43B1-9DE7-0548FD6A4E52}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal
diff --git a/vs2010-nms-net2.0.csproj b/vs2010-nms-net2.0.csproj
deleted file mode 100644
index fb4cd6b..0000000
--- a/vs2010-nms-net2.0.csproj
+++ /dev/null
@@ -1,193 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS</RootNamespace>
-    <AssemblyName>Apache.NMS</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>Always</RunPostBuildEvent>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-2.0</BaseIntermediateOutputPath>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-2.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-2.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Transactions" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\main\csharp\IBytesMessage.cs" />
-    <Compile Include="src\main\csharp\IConnection.cs" />
-    <Compile Include="src\main\csharp\IConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\IConnectionMetaData.cs" />
-    <Compile Include="src\main\csharp\IDestination.cs" />
-    <Compile Include="src\main\csharp\IllegalStateException.cs" />
-    <Compile Include="src\main\csharp\IMapMessage.cs" />
-    <Compile Include="src\main\csharp\IMessage.cs" />
-    <Compile Include="src\main\csharp\IMessageConsumer.cs" />
-    <Compile Include="src\main\csharp\IMessageProducer.cs" />
-    <Compile Include="src\main\csharp\INetTxConnection.cs" />
-    <Compile Include="src\main\csharp\INetTxConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\INetTxSession.cs" />
-    <Compile Include="src\main\csharp\InvalidClientIDException.cs" />
-    <Compile Include="src\main\csharp\InvalidDestinationException.cs" />
-    <Compile Include="src\main\csharp\InvalidSelectorException.cs" />
-    <Compile Include="src\main\csharp\IObjectMessage.cs" />
-    <Compile Include="src\main\csharp\IPrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\IQueue.cs" />
-    <Compile Include="src\main\csharp\IQueueBrowser.cs" />
-    <Compile Include="src\main\csharp\IRedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ISession.cs" />
-    <Compile Include="src\main\csharp\IStartable.cs" />
-    <Compile Include="src\main\csharp\IStoppable.cs" />
-    <Compile Include="src\main\csharp\IStreamMessage.cs" />
-    <Compile Include="src\main\csharp\ITemporaryQueue.cs" />
-    <Compile Include="src\main\csharp\ITemporaryTopic.cs" />
-    <Compile Include="src\main\csharp\ITextMessage.cs" />
-    <Compile Include="src\main\csharp\ITopic.cs" />
-    <Compile Include="src\main\csharp\ITrace.cs" />
-    <Compile Include="src\main\csharp\MessageConsumerExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageEOFException.cs" />
-    <Compile Include="src\main\csharp\MessageFormatException.cs" />
-    <Compile Include="src\main\csharp\MessageNotReadableException.cs" />
-    <Compile Include="src\main\csharp\MessageNotWriteableException.cs" />
-    <Compile Include="src\main\csharp\MessageProducerExtensions.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionException.cs" />
-    <Compile Include="src\main\csharp\NMSConstants.cs" />
-    <Compile Include="src\main\csharp\NMSException.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\NMSSecurityException.cs" />
-    <Compile Include="src\main\csharp\policies\RedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ResourceAllocationException.cs" />
-    <Compile Include="src\main\csharp\SessionExtensions.cs" />
-    <Compile Include="src\main\csharp\Tracer.cs" />
-    <Compile Include="src\main\csharp\TransactionInProgressException.cs" />
-    <Compile Include="src\main\csharp\TransactionRolledBackException.cs" />
-    <Compile Include="src\main\csharp\Util\Atomic.cs" />
-    <Compile Include="src\main\csharp\Util\Convert.cs" />
-    <Compile Include="src\main\csharp\Util\CountDownLatch.cs" />
-    <Compile Include="src\main\csharp\Util\DateUtils.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryReader.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryWriter.cs" />
-    <Compile Include="src\main\csharp\Util\EndianSupport.cs" />
-    <Compile Include="src\main\csharp\Util\MessagePropertyIntercepter.cs" />
-    <Compile Include="src\main\csharp\Util\MessageTransformation.cs" />
-    <Compile Include="src\main\csharp\Util\NMSExceptionSupport.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMapInterceptor.cs" />
-    <Compile Include="src\main\csharp\Util\SessionUtils.cs" />
-    <Compile Include="src\main\csharp\Util\URISupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\Util\XmlUtils.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="LICENSE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="NOTICE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
-      <Visible>False</Visible>
-      <ProductName>Windows Installer 3.1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-
-if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/main/csharp/CommonAssemblyInfo.cs"
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms-net3.5.csproj b/vs2010-nms-net3.5.csproj
deleted file mode 100644
index 8262a56..0000000
--- a/vs2010-nms-net3.5.csproj
+++ /dev/null
@@ -1,184 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS</RootNamespace>
-    <AssemblyName>Apache.NMS</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-3.5</BaseIntermediateOutputPath>
-    <TargetFrameworkProfile>
-    </TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-3.5\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0,NET_3_5</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-3.5\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_3_5</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Transactions" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\main\csharp\IBytesMessage.cs" />
-    <Compile Include="src\main\csharp\IConnection.cs" />
-    <Compile Include="src\main\csharp\IConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\IConnectionMetaData.cs" />
-    <Compile Include="src\main\csharp\IDestination.cs" />
-    <Compile Include="src\main\csharp\IllegalStateException.cs" />
-    <Compile Include="src\main\csharp\IMapMessage.cs" />
-    <Compile Include="src\main\csharp\IMessage.cs" />
-    <Compile Include="src\main\csharp\IMessageConsumer.cs" />
-    <Compile Include="src\main\csharp\IMessageProducer.cs" />
-    <Compile Include="src\main\csharp\INetTxConnection.cs" />
-    <Compile Include="src\main\csharp\INetTxConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\INetTxSession.cs" />
-    <Compile Include="src\main\csharp\InvalidClientIDException.cs" />
-    <Compile Include="src\main\csharp\InvalidDestinationException.cs" />
-    <Compile Include="src\main\csharp\InvalidSelectorException.cs" />
-    <Compile Include="src\main\csharp\IObjectMessage.cs" />
-    <Compile Include="src\main\csharp\IPrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\IQueue.cs" />
-    <Compile Include="src\main\csharp\IQueueBrowser.cs" />
-    <Compile Include="src\main\csharp\IRedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ISession.cs" />
-    <Compile Include="src\main\csharp\IStartable.cs" />
-    <Compile Include="src\main\csharp\IStoppable.cs" />
-    <Compile Include="src\main\csharp\IStreamMessage.cs" />
-    <Compile Include="src\main\csharp\ITemporaryQueue.cs" />
-    <Compile Include="src\main\csharp\ITemporaryTopic.cs" />
-    <Compile Include="src\main\csharp\ITextMessage.cs" />
-    <Compile Include="src\main\csharp\ITopic.cs" />
-    <Compile Include="src\main\csharp\ITrace.cs" />
-    <Compile Include="src\main\csharp\MessageConsumerExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageEOFException.cs" />
-    <Compile Include="src\main\csharp\MessageFormatException.cs" />
-    <Compile Include="src\main\csharp\MessageNotReadableException.cs" />
-    <Compile Include="src\main\csharp\MessageNotWriteableException.cs" />
-    <Compile Include="src\main\csharp\MessageProducerExtensions.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionException.cs" />
-    <Compile Include="src\main\csharp\NMSConstants.cs" />
-    <Compile Include="src\main\csharp\NMSException.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\NMSSecurityException.cs" />
-    <Compile Include="src\main\csharp\policies\RedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ResourceAllocationException.cs" />
-    <Compile Include="src\main\csharp\SessionExtensions.cs" />
-    <Compile Include="src\main\csharp\Tracer.cs" />
-    <Compile Include="src\main\csharp\TransactionInProgressException.cs" />
-    <Compile Include="src\main\csharp\TransactionRolledBackException.cs" />
-    <Compile Include="src\main\csharp\Util\Atomic.cs" />
-    <Compile Include="src\main\csharp\Util\Convert.cs" />
-    <Compile Include="src\main\csharp\Util\CountDownLatch.cs" />
-    <Compile Include="src\main\csharp\Util\DateUtils.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryReader.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryWriter.cs" />
-    <Compile Include="src\main\csharp\Util\EndianSupport.cs" />
-    <Compile Include="src\main\csharp\Util\MessagePropertyIntercepter.cs" />
-    <Compile Include="src\main\csharp\Util\MessageTransformation.cs" />
-    <Compile Include="src\main\csharp\Util\NMSExceptionSupport.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMapInterceptor.cs" />
-    <Compile Include="src\main\csharp\Util\SessionUtils.cs" />
-    <Compile Include="src\main\csharp\Util\URISupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\Util\XmlUtils.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="LICENSE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="NOTICE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
-      <Visible>False</Visible>
-      <ProductName>Windows Installer 3.1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/main/csharp/CommonAssemblyInfo.cs"
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms-net4.0.csproj b/vs2010-nms-net4.0.csproj
deleted file mode 100644
index 55d68eb..0000000
--- a/vs2010-nms-net4.0.csproj
+++ /dev/null
@@ -1,184 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{66C0C9A8-2782-4C98-9ACB-74F720570DD9}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS</RootNamespace>
-    <AssemblyName>Apache.NMS</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-4.0</BaseIntermediateOutputPath>
-    <TargetFrameworkProfile>
-    </TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-4.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0,NET_3_5,NET_4_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-4.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0,NET_3_5,NET_4_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Transactions" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\main\csharp\IBytesMessage.cs" />
-    <Compile Include="src\main\csharp\IConnection.cs" />
-    <Compile Include="src\main\csharp\IConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\IConnectionMetaData.cs" />
-    <Compile Include="src\main\csharp\IDestination.cs" />
-    <Compile Include="src\main\csharp\IllegalStateException.cs" />
-    <Compile Include="src\main\csharp\IMapMessage.cs" />
-    <Compile Include="src\main\csharp\IMessage.cs" />
-    <Compile Include="src\main\csharp\IMessageConsumer.cs" />
-    <Compile Include="src\main\csharp\IMessageProducer.cs" />
-    <Compile Include="src\main\csharp\INetTxConnection.cs" />
-    <Compile Include="src\main\csharp\INetTxConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\INetTxSession.cs" />
-    <Compile Include="src\main\csharp\InvalidClientIDException.cs" />
-    <Compile Include="src\main\csharp\InvalidDestinationException.cs" />
-    <Compile Include="src\main\csharp\InvalidSelectorException.cs" />
-    <Compile Include="src\main\csharp\IObjectMessage.cs" />
-    <Compile Include="src\main\csharp\IPrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\IQueue.cs" />
-    <Compile Include="src\main\csharp\IQueueBrowser.cs" />
-    <Compile Include="src\main\csharp\IRedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ISession.cs" />
-    <Compile Include="src\main\csharp\IStartable.cs" />
-    <Compile Include="src\main\csharp\IStoppable.cs" />
-    <Compile Include="src\main\csharp\IStreamMessage.cs" />
-    <Compile Include="src\main\csharp\ITemporaryQueue.cs" />
-    <Compile Include="src\main\csharp\ITemporaryTopic.cs" />
-    <Compile Include="src\main\csharp\ITextMessage.cs" />
-    <Compile Include="src\main\csharp\ITopic.cs" />
-    <Compile Include="src\main\csharp\ITrace.cs" />
-    <Compile Include="src\main\csharp\MessageConsumerExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageEOFException.cs" />
-    <Compile Include="src\main\csharp\MessageFormatException.cs" />
-    <Compile Include="src\main\csharp\MessageNotReadableException.cs" />
-    <Compile Include="src\main\csharp\MessageNotWriteableException.cs" />
-    <Compile Include="src\main\csharp\MessageProducerExtensions.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionException.cs" />
-    <Compile Include="src\main\csharp\NMSConstants.cs" />
-    <Compile Include="src\main\csharp\NMSException.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\NMSSecurityException.cs" />
-    <Compile Include="src\main\csharp\policies\RedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ResourceAllocationException.cs" />
-    <Compile Include="src\main\csharp\SessionExtensions.cs" />
-    <Compile Include="src\main\csharp\Tracer.cs" />
-    <Compile Include="src\main\csharp\TransactionInProgressException.cs" />
-    <Compile Include="src\main\csharp\TransactionRolledBackException.cs" />
-    <Compile Include="src\main\csharp\Util\Atomic.cs" />
-    <Compile Include="src\main\csharp\Util\Convert.cs" />
-    <Compile Include="src\main\csharp\Util\CountDownLatch.cs" />
-    <Compile Include="src\main\csharp\Util\DateUtils.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryReader.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryWriter.cs" />
-    <Compile Include="src\main\csharp\Util\EndianSupport.cs" />
-    <Compile Include="src\main\csharp\Util\MessagePropertyIntercepter.cs" />
-    <Compile Include="src\main\csharp\Util\MessageTransformation.cs" />
-    <Compile Include="src\main\csharp\Util\NMSExceptionSupport.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMapInterceptor.cs" />
-    <Compile Include="src\main\csharp\Util\SessionUtils.cs" />
-    <Compile Include="src\main\csharp\Util\URISupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\main\csharp\Util\XmlUtils.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="LICENSE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="NOTICE.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
-      <Visible>False</Visible>
-      <ProductName>Windows Installer 3.1</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/main/csharp/CommonAssemblyInfo.cs"
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms-test-net2.0.csproj b/vs2010-nms-test-net2.0.csproj
deleted file mode 100644
index 6d7f4ac..0000000
--- a/vs2010-nms-test-net2.0.csproj
+++ /dev/null
@@ -1,199 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{A23FD598-25E6-4294-B519-40AD2288C955}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS.Test</RootNamespace>
-    <AssemblyName>Apache.NMS.Test</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-2.0</BaseIntermediateOutputPath>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-2.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-2.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>lib\NUnit\net-2.0\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\test\csharp\AsyncConsumeTest.cs" />
-    <Compile Include="src\test\csharp\BadConsumeTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\BytesMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\Commands\BytesMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Destination.cs" />
-    <Compile Include="src\test\csharp\Commands\MapMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Message.cs" />
-    <Compile Include="src\test\csharp\Commands\ObjectMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Queue.cs" />
-    <Compile Include="src\test\csharp\Commands\StreamMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\TempDestination.cs" />
-    <Compile Include="src\test\csharp\Commands\TempQueue.cs" />
-    <Compile Include="src\test\csharp\Commands\TempTopic.cs" />
-    <Compile Include="src\test\csharp\Commands\TextMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Topic.cs" />
-    <Compile Include="src\test\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\test\csharp\ConnectionTest.cs" />
-    <Compile Include="src\test\csharp\ConsumerTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\DurableTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\EndianBinaryReaderTest.cs" />
-    <Compile Include="src\test\csharp\EndianBinaryWriterTest.cs" />
-    <Compile Include="src\test\csharp\EndianTest.cs" />
-    <Compile Include="src\test\csharp\ForgeinMessageTransformationTest.cs" />
-    <Compile Include="src\test\csharp\MessageTransformerTest.cs" />
-    <Compile Include="src\test\csharp\NMSPropertyTest.cs" />
-    <Compile Include="src\test\csharp\NMSTestSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MapMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageSelectorTest.cs" />
-    <Compile Include="src\test\csharp\NmsTracer.cs" />
-    <Compile Include="src\test\csharp\PrimitiveMapTest.cs" />
-    <Compile Include="src\test\csharp\ProducerTest.cs" />
-    <Compile Include="src\test\csharp\RedeliveryPolicyTest.cs" />
-    <Compile Include="src\test\csharp\RequestResponseTest.cs" />
-    <Compile Include="src\test\csharp\StreamMessageTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationDeletionTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationTest.cs" />
-    <Compile Include="src\test\csharp\TextMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\TransactionTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\URISupportTest.cs" />
-    <Compile Include="src\test\csharp\XmlMessageTest.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.2.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 2.0 %28x86%29</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.0 %28x86%29</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="vs2010-nms-net2.0.csproj">
-      <Project>{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}</Project>
-      <Name>vs2010-nms-net2.0</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/test/csharp/CommonAssemblyInfo.cs"
-
-if /i "$(download_skip)" equ "true" (
-   echo Skipping download...
-   goto :downloadskip
-)
-
-echo Downloading $(ConfigurationName) vendor files...
-cd $(ProjectDir)
-nant -nologo -q download-vendor -D:vendor.build.config=$(ConfigurationName) -D:vendor.build.framework=net-2.0
-
-:downloadskip
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms-test-net3.5.csproj b/vs2010-nms-test-net3.5.csproj
deleted file mode 100644
index b94cc37..0000000
--- a/vs2010-nms-test-net3.5.csproj
+++ /dev/null
@@ -1,201 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{3CF48147-B368-49F3-A90C-86A142F29531}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS.Test</RootNamespace>
-    <AssemblyName>Apache.NMS.Test</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-3.5</BaseIntermediateOutputPath>
-    <TargetFrameworkProfile>
-    </TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-3.5\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0,NET_3_5</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-3.5\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0,NET_3_5</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>lib\NUnit\net-3.5\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\test\csharp\AsyncConsumeTest.cs" />
-    <Compile Include="src\test\csharp\BadConsumeTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\BytesMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\Commands\BytesMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Destination.cs" />
-    <Compile Include="src\test\csharp\Commands\MapMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Message.cs" />
-    <Compile Include="src\test\csharp\Commands\ObjectMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Queue.cs" />
-    <Compile Include="src\test\csharp\Commands\StreamMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\TempDestination.cs" />
-    <Compile Include="src\test\csharp\Commands\TempQueue.cs" />
-    <Compile Include="src\test\csharp\Commands\TempTopic.cs" />
-    <Compile Include="src\test\csharp\Commands\TextMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Topic.cs" />
-    <Compile Include="src\test\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\test\csharp\ConnectionTest.cs" />
-    <Compile Include="src\test\csharp\ConsumerTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\DurableTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\EndianBinaryReaderTest.cs" />
-    <Compile Include="src\test\csharp\EndianBinaryWriterTest.cs" />
-    <Compile Include="src\test\csharp\EndianTest.cs" />
-    <Compile Include="src\test\csharp\ForgeinMessageTransformationTest.cs" />
-    <Compile Include="src\test\csharp\MessageTransformerTest.cs" />
-    <Compile Include="src\test\csharp\NMSPropertyTest.cs" />
-    <Compile Include="src\test\csharp\NMSTestSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MapMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageSelectorTest.cs" />
-    <Compile Include="src\test\csharp\NmsTracer.cs" />
-    <Compile Include="src\test\csharp\PrimitiveMapTest.cs" />
-    <Compile Include="src\test\csharp\ProducerTest.cs" />
-    <Compile Include="src\test\csharp\RedeliveryPolicyTest.cs" />
-    <Compile Include="src\test\csharp\RequestResponseTest.cs" />
-    <Compile Include="src\test\csharp\StreamMessageTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationDeletionTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationTest.cs" />
-    <Compile Include="src\test\csharp\TextMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\TransactionTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\URISupportTest.cs" />
-    <Compile Include="src\test\csharp\XmlMessageTest.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.2.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 2.0 %28x86%29</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.0 %28x86%29</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="vs2010-nms-net3.5.csproj">
-      <Project>{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}</Project>
-      <Name>vs2010-nms-net3.5</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/test/csharp/CommonAssemblyInfo.cs"
-
-if /i "$(download_skip)" equ "true" (
-   echo Skipping download...
-   goto :downloadskip
-)
-
-echo Downloading $(ConfigurationName) vendor files...
-cd $(ProjectDir)
-nant -nologo -q download-vendor -D:vendor.build.config=$(ConfigurationName) -D:vendor.build.framework=net-2.0
-
-:downloadskip
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms-test-net4.0.csproj b/vs2010-nms-test-net4.0.csproj
deleted file mode 100644
index f6aca3a..0000000
--- a/vs2010-nms-test-net4.0.csproj
+++ /dev/null
@@ -1,201 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.21022</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <RootNamespace>Apache.NMS.Test</RootNamespace>
-    <AssemblyName>Apache.NMS.Test</AssemblyName>
-    <WarningLevel>4</WarningLevel>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-    <SccProjectName>Svn</SccProjectName>
-    <SccLocalPath>Svn</SccLocalPath>
-    <SccAuxPath>Svn</SccAuxPath>
-    <SccProvider>SubversionScc</SccProvider>
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-    <BaseIntermediateOutputPath>obj\net-4.0</BaseIntermediateOutputPath>
-    <TargetFrameworkProfile>
-    </TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\net-4.0\debug\</OutputPath>
-    <DefineConstants>TRACE;DEBUG;NET,NET_2_0,NET_3_5,NET_4_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <Optimize>true</Optimize>
-    <OutputPath>build\net-4.0\release\</OutputPath>
-    <DefineConstants>TRACE;NET,NET_2_0,NET_3_5,NET_4_0</DefineConstants>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <DebugType>full</DebugType>
-    <NoWarn>3016</NoWarn>
-    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>lib\NUnit\net-4.0\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\test\csharp\AsyncConsumeTest.cs" />
-    <Compile Include="src\test\csharp\BadConsumeTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\BytesMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\Commands\BytesMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Destination.cs" />
-    <Compile Include="src\test\csharp\Commands\MapMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Message.cs" />
-    <Compile Include="src\test\csharp\Commands\ObjectMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Queue.cs" />
-    <Compile Include="src\test\csharp\Commands\StreamMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\TempDestination.cs" />
-    <Compile Include="src\test\csharp\Commands\TempQueue.cs" />
-    <Compile Include="src\test\csharp\Commands\TempTopic.cs" />
-    <Compile Include="src\test\csharp\Commands\TextMessage.cs" />
-    <Compile Include="src\test\csharp\Commands\Topic.cs" />
-    <Compile Include="src\test\csharp\CommonAssemblyInfo.cs" />
-    <Compile Include="src\test\csharp\ConnectionTest.cs" />
-    <Compile Include="src\test\csharp\ConsumerTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\DurableTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\EndianBinaryReaderTest.cs" />
-    <Compile Include="src\test\csharp\EndianBinaryWriterTest.cs" />
-    <Compile Include="src\test\csharp\EndianTest.cs" />
-    <Compile Include="src\test\csharp\ForgeinMessageTransformationTest.cs" />
-    <Compile Include="src\test\csharp\MessageTransformerTest.cs" />
-    <Compile Include="src\test\csharp\NMSPropertyTest.cs" />
-    <Compile Include="src\test\csharp\NMSTestSupport.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MapMessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\MessageSelectorTest.cs" />
-    <Compile Include="src\test\csharp\NmsTracer.cs" />
-    <Compile Include="src\test\csharp\PrimitiveMapTest.cs" />
-    <Compile Include="src\test\csharp\ProducerTest.cs" />
-    <Compile Include="src\test\csharp\RedeliveryPolicyTest.cs" />
-    <Compile Include="src\test\csharp\RequestResponseTest.cs" />
-    <Compile Include="src\test\csharp\StreamMessageTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationDeletionTest.cs" />
-    <Compile Include="src\test\csharp\TempDestinationTest.cs" />
-    <Compile Include="src\test\csharp\TextMessage.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\TransactionTest.cs">
-      <SubType>Code</SubType>
-    </Compile>
-    <Compile Include="src\test\csharp\URISupportTest.cs" />
-    <Compile Include="src\test\csharp\XmlMessageTest.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.2.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 2.0 %28x86%29</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.0">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.0 %28x86%29</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="keyfile\NMSKey.snk" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="vs2010-nms-net4.0.csproj">
-      <Project>{66C0C9A8-2782-4C98-9ACB-74F720570DD9}</Project>
-      <Name>vs2010-nms-net4.0</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
-  <PropertyGroup>
-    <PostBuildEvent>if /i "$(install_skip)" equ "true" (
-   echo Skipping install...
-   goto :installskip
-)
-
-echo Installing $(ConfigurationName) output files...
-cd $(ProjectDir)
-nant -nologo -q install-all -D:compile.skip=true
-
-:installskip
-</PostBuildEvent>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/test/csharp/CommonAssemblyInfo.cs"
-
-if /i "$(download_skip)" equ "true" (
-   echo Skipping download...
-   goto :downloadskip
-)
-
-echo Downloading $(ConfigurationName) vendor files...
-cd $(ProjectDir)
-nant -nologo -q download-vendor -D:vendor.build.config=$(ConfigurationName) -D:vendor.build.framework=net-2.0
-
-:downloadskip
-</PreBuildEvent>
-  </PropertyGroup>
-</Project>
\ No newline at end of file
diff --git a/vs2010-nms.sln b/vs2010-nms.sln
deleted file mode 100644
index d06289c..0000000
--- a/vs2010-nms.sln
+++ /dev/null
@@ -1,54 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-net2.0", "vs2010-nms-net2.0.csproj", "{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-test-net2.0", "vs2010-nms-test-net2.0.csproj", "{A23FD598-25E6-4294-B519-40AD2288C955}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-net3.5", "vs2010-nms-net3.5.csproj", "{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-net4.0", "vs2010-nms-net4.0.csproj", "{66C0C9A8-2782-4C98-9ACB-74F720570DD9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-test-net3.5", "vs2010-nms-test-net3.5.csproj", "{3CF48147-B368-49F3-A90C-86A142F29531}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2010-nms-test-net4.0", "vs2010-nms-test-net4.0.csproj", "{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}"
-EndProject
-Global
-	GlobalSection(SubversionScc) = preSolution
-		Svn-Managed = True
-		Manager = AnkhSVN - Subversion Support for Visual Studio
-	EndGlobalSection
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{03CF8530-43E5-4BC3-AB37-60B20BB4A9CB}.Release|Any CPU.Build.0 = Release|Any CPU
-		{A23FD598-25E6-4294-B519-40AD2288C955}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{A23FD598-25E6-4294-B519-40AD2288C955}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{A23FD598-25E6-4294-B519-40AD2288C955}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{A23FD598-25E6-4294-B519-40AD2288C955}.Release|Any CPU.Build.0 = Release|Any CPU
-		{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{D3FB0346-8AA5-4C72-9942-C4A8B43398DC}.Release|Any CPU.Build.0 = Release|Any CPU
-		{66C0C9A8-2782-4C98-9ACB-74F720570DD9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{66C0C9A8-2782-4C98-9ACB-74F720570DD9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{66C0C9A8-2782-4C98-9ACB-74F720570DD9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{66C0C9A8-2782-4C98-9ACB-74F720570DD9}.Release|Any CPU.Build.0 = Release|Any CPU
-		{3CF48147-B368-49F3-A90C-86A142F29531}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{3CF48147-B368-49F3-A90C-86A142F29531}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{3CF48147-B368-49F3-A90C-86A142F29531}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{3CF48147-B368-49F3-A90C-86A142F29531}.Release|Any CPU.Build.0 = Release|Any CPU
-		{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{7AB6D15D-C7DA-4DE9-99DC-DD4870554FBF}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal
diff --git a/vs2013-nms-android.csproj b/vs2013-nms-android.csproj
deleted file mode 100644
index c5032c2..0000000
--- a/vs2013-nms-android.csproj
+++ /dev/null
@@ -1,139 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>8.0.30703</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}</ProjectGuid>
-    <ProjectTypeGuids>{EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>src\main\csharp</AppDesignerFolder>
-    <RootNamespace>Apache.NMS</RootNamespace>
-    <AssemblyName>Apache.NMS</AssemblyName>
-    <FileAlignment>512</FileAlignment>
-    <BaseIntermediateOutputPath>obj\android</BaseIntermediateOutputPath>
-    <AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <AndroidUseLatestPlatformSdk />
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>build\android\Debug</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>build\android\Release</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Mono.Android" />
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Transactions" />
-    <Reference Include="System.Web.Services" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="src\main\csharp\IBytesMessage.cs" />
-    <Compile Include="src\main\csharp\IConnection.cs" />
-    <Compile Include="src\main\csharp\IConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\IConnectionMetaData.cs" />
-    <Compile Include="src\main\csharp\IDestination.cs" />
-    <Compile Include="src\main\csharp\IllegalStateException.cs" />
-    <Compile Include="src\main\csharp\IMapMessage.cs" />
-    <Compile Include="src\main\csharp\IMessage.cs" />
-    <Compile Include="src\main\csharp\IMessageConsumer.cs" />
-    <Compile Include="src\main\csharp\IMessageProducer.cs" />
-    <Compile Include="src\main\csharp\INetTxConnection.cs" />
-    <Compile Include="src\main\csharp\INetTxConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\INetTxSession.cs" />
-    <Compile Include="src\main\csharp\InvalidClientIDException.cs" />
-    <Compile Include="src\main\csharp\InvalidDestinationException.cs" />
-    <Compile Include="src\main\csharp\InvalidSelectorException.cs" />
-    <Compile Include="src\main\csharp\IObjectMessage.cs" />
-    <Compile Include="src\main\csharp\IPrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\IQueue.cs" />
-    <Compile Include="src\main\csharp\IQueueBrowser.cs" />
-    <Compile Include="src\main\csharp\IRedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ISession.cs" />
-    <Compile Include="src\main\csharp\IStartable.cs" />
-    <Compile Include="src\main\csharp\IStoppable.cs" />
-    <Compile Include="src\main\csharp\IStreamMessage.cs" />
-    <Compile Include="src\main\csharp\ITemporaryQueue.cs" />
-    <Compile Include="src\main\csharp\ITemporaryTopic.cs" />
-    <Compile Include="src\main\csharp\ITextMessage.cs" />
-    <Compile Include="src\main\csharp\ITopic.cs" />
-    <Compile Include="src\main\csharp\ITrace.cs" />
-    <Compile Include="src\main\csharp\MessageConsumerExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageEOFException.cs" />
-    <Compile Include="src\main\csharp\MessageExtensions.cs" />
-    <Compile Include="src\main\csharp\MessageFormatException.cs" />
-    <Compile Include="src\main\csharp\MessageNotReadableException.cs" />
-    <Compile Include="src\main\csharp\MessageNotWriteableException.cs" />
-    <Compile Include="src\main\csharp\MessageProducerExtensions.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionException.cs" />
-    <Compile Include="src\main\csharp\NMSConnectionFactory.cs" />
-    <Compile Include="src\main\csharp\NMSConstants.cs" />
-    <Compile Include="src\main\csharp\NMSException.cs" />
-    <Compile Include="src\main\csharp\NMSSecurityException.cs" />
-    <Compile Include="src\main\csharp\policies\RedeliveryPolicy.cs" />
-    <Compile Include="src\main\csharp\ResourceAllocationException.cs" />
-    <Compile Include="src\main\csharp\SessionExtensions.cs" />
-    <Compile Include="src\main\csharp\Tracer.cs" />
-    <Compile Include="src\main\csharp\TransactionInProgressException.cs" />
-    <Compile Include="src\main\csharp\TransactionRolledBackException.cs" />
-    <Compile Include="src\main\csharp\Util\Atomic.cs" />
-    <Compile Include="src\main\csharp\Util\Convert.cs" />
-    <Compile Include="src\main\csharp\Util\CountDownLatch.cs" />
-    <Compile Include="src\main\csharp\Util\DateUtils.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryReader.cs" />
-    <Compile Include="src\main\csharp\Util\EndianBinaryWriter.cs" />
-    <Compile Include="src\main\csharp\Util\EndianSupport.cs" />
-    <Compile Include="src\main\csharp\Util\MessagePropertyIntercepter.cs" />
-    <Compile Include="src\main\csharp\Util\MessageTransformation.cs" />
-    <Compile Include="src\main\csharp\Util\NMSExceptionSupport.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMap.cs" />
-    <Compile Include="src\main\csharp\Util\PrimitiveMapInterceptor.cs" />
-    <Compile Include="src\main\csharp\Util\SessionUtils.cs" />
-    <Compile Include="src\main\csharp\Util\URISupport.cs" />
-    <Compile Include="src\main\csharp\Util\XmlUtils.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="Resources\Resource.Designer.cs" />
-    <Compile Include="src\main\csharp\CommonAssemblyInfo.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="Resources\AboutResources.txt" />
-  </ItemGroup>
-  <ItemGroup>
-    <AndroidResource Include="Resources\Values\Strings.xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="LICENSE.txt" />
-    <Content Include="NOTICE.txt" />
-    <Content Include="README.txt" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
-  <PropertyGroup>
-    <PreBuildEvent>cd $(ProjectDir)
-nant -nologo -q generate-assemblyinfo -D:assemblyinfo.filename="src/main/csharp/CommonAssemblyInfo.cs"</PreBuildEvent>
-  </PropertyGroup>
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>
\ No newline at end of file
diff --git a/vs2013-nms.sln b/vs2013-nms.sln
deleted file mode 100644
index 78e6cc6..0000000
--- a/vs2013-nms.sln
+++ /dev/null
@@ -1,22 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.30501.0
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs2013-nms-android", "vs2013-nms-android.csproj", "{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{A383BBDE-035D-4CB8-AAB2-9EF1AB797915}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal
diff --git a/vs2019-nms-api-test.csproj b/vs2019-nms-api-test.csproj
deleted file mode 100644
index 2a4b42b..0000000
--- a/vs2019-nms-api-test.csproj
+++ /dev/null
@@ -1,60 +0,0 @@
-<Project>
-  <PropertyGroup>
-    <MSBuildProjectExtensionsPath>obj\$(MSBuildProjectName)</MSBuildProjectExtensionsPath>
-    <BaseIntermediateOutputPath>obj\$(MSBuildProjectName)</BaseIntermediateOutputPath>
-    <IntermediateOutputPath>$(BaseIntermediateOutputPath)\$(Configuration)\</IntermediateOutputPath>
-  </PropertyGroup>
-  <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
-
-  <PropertyGroup>
-    <TargetFramework>netstandard2.0</TargetFramework>
-    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
-    <PackageId>Apache.NMS.Test</PackageId>
-    <Version>1.8.0</Version>
-    <Authors>Apache ActiveMQ</Authors>
-    <Company>Apache Software Foundation</Company>
-    <Product>Apache NMS API</Product>
-    <Description>Apache NMS (.Net Standard Messaging Library) Test Suite</Description>
-	  <Copyright>Copyright (C) 2005-2019 Apache Software Foundation</Copyright>
-    <PackageProjectUrl>https://activemq.apache.org/components/nms/</PackageProjectUrl>
-    <PackageLicense>https://github.com/apache/activemq-nms-api/blob/master/LICENSE.txt</PackageLicense>
-    <PackageIconUrl>https://activemq.apache.org/assets/img/activemq_logo_icon.png</PackageIconUrl>
-    <RepositoryUrl>https://github.com/apache/activemq-nms-api</RepositoryUrl>
-    <RepositoryType>git</RepositoryType>
-    <PackageTags>apache;activemq;nms;api;net;test;messaging</PackageTags>
-
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>build\netstandard2.0\release</OutputPath>
-    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>build\netstandard2.0\debug</OutputPath>
-    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Compile Remove="obj\**" />
-    <Compile Remove="Resources\**" />
-    <Compile Remove="src\main\**" />
-    <EmbeddedResource Remove="obj\**" />
-    <EmbeddedResource Remove="Resources\**" />
-    <EmbeddedResource Remove="src\test\**" />
-    <None Remove="obj\**" />
-    <None Remove="Resources\**" />
-    <None Remove="src\main\**" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="vs2019-nms-api.csproj" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <PackageReference Include="NUnit" Version="3.12.0" />
-  </ItemGroup>
-
-  <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
-</Project>
diff --git a/vs2019-nms-api.csproj b/vs2019-nms-api.csproj
deleted file mode 100644
index 0eea16a..0000000
--- a/vs2019-nms-api.csproj
+++ /dev/null
@@ -1,52 +0,0 @@
-<Project>
-  <PropertyGroup>
-    <MSBuildProjectExtensionsPath>obj\$(MSBuildProjectName)</MSBuildProjectExtensionsPath>
-    <BaseIntermediateOutputPath>obj\$(MSBuildProjectName)</BaseIntermediateOutputPath>
-    <IntermediateOutputPath>$(BaseIntermediateOutputPath)\$(Configuration)\</IntermediateOutputPath>
-  </PropertyGroup>
-  <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
-
-  <PropertyGroup>
-    <TargetFramework>netstandard2.0</TargetFramework>
-    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
-    <PackageId>Apache.NMS</PackageId>
-    <Version>1.8.0</Version>
-    <Authors>Apache ActiveMQ</Authors>
-    <Company>Apache Software Foundation</Company>
-    <Product>Apache NMS API</Product>
-    <Description>Apache NMS (.Net Standard Messaging Library): An abstract interface to Message Oriented Middleware (MOM) providers</Description>
-    <Copyright>Copyright (C) 2005-2019 Apache Software Foundation</Copyright>
-    <PackageProjectUrl>https://activemq.apache.org/components/nms/</PackageProjectUrl>
-    <PackageLicense>https://github.com/apache/activemq-nms-api/blob/master/LICENSE.txt</PackageLicense>
-    <PackageIconUrl>https://activemq.apache.org/assets/img/activemq_logo_icon.png</PackageIconUrl>
-    <RepositoryUrl>https://github.com/apache/activemq-nms-api</RepositoryUrl>
-    <RepositoryType>git</RepositoryType>
-    <PackageTags>apache;activemq;nms;api;net;messaging</PackageTags>
-
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>keyfile\NMSKey.snk</AssemblyOriginatorKeyFile>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>build\netstandard2.0\release\</OutputPath>
-	<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>build\netstandard2.0\debug\</OutputPath>
-	<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Compile Remove="obj\**" />
-    <Compile Remove="Resources\**" />
-    <Compile Remove="src\test\**" />
-    <EmbeddedResource Remove="obj\**" />
-    <EmbeddedResource Remove="Resources\**" />
-    <EmbeddedResource Remove="src\test\**" />
-    <None Remove="obj\**" />
-    <None Remove="Resources\**" />
-    <None Remove="src\test\**" />
-  </ItemGroup>
-
-  <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
-</Project>
diff --git a/vs2019-nms.sln b/vs2019-nms.sln
deleted file mode 100644
index 69965ea..0000000
--- a/vs2019-nms.sln
+++ /dev/null
@@ -1,34 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.28917.181
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "vs2019-nms-api", "vs2019-nms-api.csproj", "{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "vs2019-nms-api-test", "vs2019-nms-api-test.csproj", "{54125058-69AF-46EA-BB09-BA739C6CBD3F}"
-	ProjectSection(ProjectDependencies) = postProject
-		{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18} = {527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}
-	EndProjectSection
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{527FA0B7-FBA9-4D4F-B49A-014EC16ECC18}.Release|Any CPU.Build.0 = Release|Any CPU
-		{54125058-69AF-46EA-BB09-BA739C6CBD3F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{54125058-69AF-46EA-BB09-BA739C6CBD3F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{54125058-69AF-46EA-BB09-BA739C6CBD3F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{54125058-69AF-46EA-BB09-BA739C6CBD3F}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-	GlobalSection(ExtensibilityGlobals) = postSolution
-		SolutionGuid = {56A30ED4-C3B2-42E6-9BFE-383835662642}
-	EndGlobalSection
-EndGlobal