using System;
using System.Reflection;
using System.Runtime.InteropServices;

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.4016
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

[assembly: ComVisibleAttribute(false)]
[assembly: CLSCompliantAttribute(false)]
[assembly: AssemblyTitleAttribute("Apache NMS for EMS Class Library")]
[assembly: AssemblyDescriptionAttribute("Apache NMS for EMS Class Library (.Net Messaging Library Implementation): An impl" +
    "ementation of the NMS API for EMS")]
[assembly: AssemblyConfigurationAttribute("SNAPSHOT")]
[assembly: AssemblyCompanyAttribute("http://activemq.apache.org/nms")]
[assembly: AssemblyProductAttribute("Apache NMS for EMS Class Library")]
[assembly: AssemblyCopyrightAttribute("Copyright (C) 2005-2009 Apache Software Foundation")]
[assembly: AssemblyTrademarkAttribute("")]
[assembly: AssemblyCultureAttribute("")]
[assembly: AssemblyVersionAttribute("1.1.0")]
[assembly: AssemblyInformationalVersionAttribute("1.1.0")]

