diff options
-rw-r--r-- | mcs/build/common/ChangeLog | 4 | ||||
-rw-r--r-- | mcs/build/common/Consts.cs.in | 1 | ||||
-rw-r--r-- | mcs/class/ChangeLog | 5 | ||||
-rw-r--r-- | mcs/class/Makefile | 4 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging.RabbitMQ/Assembly/AssemblyInfo.cs | 2 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging.RabbitMQ/ChangeLog | 8 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ_test_net_2_0.dll.config | 6 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging/Assembly/AssemblyInfo.cs | 2 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging/ChangeLog | 6 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging/Makefile | 7 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging/Mono.Messaging/ChangeLog | 10 | ||||
-rw-r--r-- | mcs/class/Mono.Messaging/Mono.Messaging/MessagingProviderLocator.cs | 36 |
12 files changed, 80 insertions, 11 deletions
diff --git a/mcs/build/common/ChangeLog b/mcs/build/common/ChangeLog index 68fa7defd69..546006b63bd 100644 --- a/mcs/build/common/ChangeLog +++ b/mcs/build/common/ChangeLog @@ -1,3 +1,7 @@ +2009-07-18 Michael Barker <mike@middlesoft.co.uk> + + * Consts.cs.in: Added constant for Mono.Messaging.RabbitMQ. + 2009-06-15 Miguel de Icaza <miguel@novell.com> * MonoTODOAttribute.cs: Thin diet, no point in having virtual diff --git a/mcs/build/common/Consts.cs.in b/mcs/build/common/Consts.cs.in index 629b39cf5d7..29bce04c7e2 100644 --- a/mcs/build/common/Consts.cs.in +++ b/mcs/build/common/Consts.cs.in @@ -109,6 +109,7 @@ internal public const string AssemblyMono_Http = "Mono.Http, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=0738eb9f132ed756"; public const string AssemblyMono_Posix = "Mono.Posix, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=0738eb9f132ed756"; public const string AssemblyMono_Security = "Mono.Security, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=0738eb9f132ed756"; + public const string AssemblyMono_Messaging_RabbitMQ = "Mono.Messaging.RabbitMQ, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=0738eb9f132ed756"; public const string AssemblyCorlib = "mscorlib, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=b77a5c561934e089"; public const string AssemblySystem = "System, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=b77a5c561934e089"; public const string AssemblySystem_Data = "System.Data, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=b77a5c561934e089"; diff --git a/mcs/class/ChangeLog b/mcs/class/ChangeLog index 81c5beb62b2..eabfefc622d 100644 --- a/mcs/class/ChangeLog +++ b/mcs/class/ChangeLog @@ -1,3 +1,8 @@ + +2009-07-18 Michael Barker <mike@middlesoft.co.uk> + + * Makefile: Mono.Messaging.RabbitMQ back into all assemblies. + 2009-07-17 Zoltan Varga <vargaz@gmail.com> * Makefile: Applied patch from Marcus Griep <marcus@griep.us>. diff --git a/mcs/class/Makefile b/mcs/class/Makefile index 3335414ca7a..2ee01197137 100644 --- a/mcs/class/Makefile +++ b/mcs/class/Makefile @@ -76,6 +76,7 @@ common_dirs := \ RabbitMQ.Client \ Mono.Messaging \ System.Messaging \ + Mono.Messaging.RabbitMQ \ System.ServiceProcess \ System.Drawing.Design \ System.Design \ @@ -119,8 +120,7 @@ net_2_0_dirs := \ Mono.Management \ Mono.Options \ Mono.Simd \ - Mono.Tasklets \ - Mono.Messaging.RabbitMQ + Mono.Tasklets net_2_0_only_dirs := \ System.Web.Extensions_1.0 \ diff --git a/mcs/class/Mono.Messaging.RabbitMQ/Assembly/AssemblyInfo.cs b/mcs/class/Mono.Messaging.RabbitMQ/Assembly/AssemblyInfo.cs index ed35d9aa8d1..acaa4a3fdd1 100644 --- a/mcs/class/Mono.Messaging.RabbitMQ/Assembly/AssemblyInfo.cs +++ b/mcs/class/Mono.Messaging.RabbitMQ/Assembly/AssemblyInfo.cs @@ -55,7 +55,7 @@ using System.Runtime.InteropServices; [assembly: CLSCompliant (false)] [assembly: AssemblyDelaySign (true)] -[assembly: AssemblyKeyFile("../msfinal.pub")] +[assembly: AssemblyKeyFile("../mono.pub")] #if NET_2_0 [assembly: AssemblyFileVersion (Consts.FxFileVersion)] diff --git a/mcs/class/Mono.Messaging.RabbitMQ/ChangeLog b/mcs/class/Mono.Messaging.RabbitMQ/ChangeLog index 76528499b65..836d4548d55 100644 --- a/mcs/class/Mono.Messaging.RabbitMQ/ChangeLog +++ b/mcs/class/Mono.Messaging.RabbitMQ/ChangeLog @@ -1,3 +1,9 @@ +2009-07-18 Michael Barker <mike@middlesoft.co.uk> + + * AssemblyInfo.cs: Switch to mono.pub certificate for signing + assembly. + * Mono.Messaging.RabbitMQ_test_net_2_0.dll.config: New + 2009-07-11 Michael Barker <mike@middlesoft.co.uk> * Mono.Messaging.RabbitMQ_test.dll.sources: Moved MessageEnumeratorTest.cs @@ -15,4 +21,4 @@ 2009-05-19 Michael Barker <mike@middlesoft.co.uk> - * Makefile: Added environment variable for the RabbitMQMessagingProvider
\ No newline at end of file + * Makefile: Added environment variable for the RabbitMQMessagingProvider diff --git a/mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ_test_net_2_0.dll.config b/mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ_test_net_2_0.dll.config new file mode 100644 index 00000000000..ba80c7f3b06 --- /dev/null +++ b/mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ_test_net_2_0.dll.config @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" ?> +<configuration> + <appSettings> + <add key="MONO_MESSAGING_PROVIDER" value="Mono.Messaging.RabbitMQ.RabbitMQMessagingProvider,Mono.Messaging.RabbitMQ"/> + </appSettings> +</configuration>
\ No newline at end of file diff --git a/mcs/class/Mono.Messaging/Assembly/AssemblyInfo.cs b/mcs/class/Mono.Messaging/Assembly/AssemblyInfo.cs index c3011607d85..9ebe8b89076 100644 --- a/mcs/class/Mono.Messaging/Assembly/AssemblyInfo.cs +++ b/mcs/class/Mono.Messaging/Assembly/AssemblyInfo.cs @@ -55,7 +55,7 @@ using System.Runtime.InteropServices; [assembly: CLSCompliant (true)] [assembly: AssemblyDelaySign (true)] -[assembly: AssemblyKeyFile("../msfinal.pub")] +[assembly: AssemblyKeyFile("../mono.pub")] #if NET_2_0 [assembly: AssemblyFileVersion (Consts.FxFileVersion)] diff --git a/mcs/class/Mono.Messaging/ChangeLog b/mcs/class/Mono.Messaging/ChangeLog index 3e0f8ab586f..b422a3194a2 100644 --- a/mcs/class/Mono.Messaging/ChangeLog +++ b/mcs/class/Mono.Messaging/ChangeLog @@ -1,3 +1,9 @@ +2009-07-18 Michael Barker <mike@middlesoft.co.uk> + + * AssemblyInfo.cs: Switched to mono.pub for assembly signing. + * Makefile: Added conditional compiliation to support + System.Configuration for NET_2_0 profile. + 2009-06-11 Michael Barker <mike@middlesoft.co.uk> * Mono.Messaging_test.dll.sources: Moved MessageBaseTest.cs and diff --git a/mcs/class/Mono.Messaging/Makefile b/mcs/class/Mono.Messaging/Makefile index bfc99895c79..0d019182c49 100644 --- a/mcs/class/Mono.Messaging/Makefile +++ b/mcs/class/Mono.Messaging/Makefile @@ -3,7 +3,14 @@ SUBDIRS = include ../../build/rules.make LIBRARY = Mono.Messaging.dll + +ifdef NET_1_0 +LIB_MCS_FLAGS = /r:System.dll +else NET_1_1 LIB_MCS_FLAGS = /r:System.dll +else +LIB_MCS_FLAGS = /r:System.dll /r:System.Configuration +endif TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll diff --git a/mcs/class/Mono.Messaging/Mono.Messaging/ChangeLog b/mcs/class/Mono.Messaging/Mono.Messaging/ChangeLog index d10ef8bab69..900d2c11b56 100644 --- a/mcs/class/Mono.Messaging/Mono.Messaging/ChangeLog +++ b/mcs/class/Mono.Messaging/Mono.Messaging/ChangeLog @@ -1,3 +1,13 @@ +2009-07-18 Michael Barker <mike@middlesoft.co.uk> + + * MessagingProviderLocator.cs: Changed to cleanly support loading of + Provider classes from the GAC. + +2009-07-14 Michael Barker <mike@middlesoft.co.uk> + + * MessagingProviderLocator.cs: Added support for a rabbitmq alias that + mean the full classname is not required. + 2009-07-11 Michael Barker <mike@middlesoft.co.uk> * MessagingProviderLocator.cs: Removed unessecary fields, made fields diff --git a/mcs/class/Mono.Messaging/Mono.Messaging/MessagingProviderLocator.cs b/mcs/class/Mono.Messaging/Mono.Messaging/MessagingProviderLocator.cs index e6f65da5388..ab324352e5c 100644 --- a/mcs/class/Mono.Messaging/Mono.Messaging/MessagingProviderLocator.cs +++ b/mcs/class/Mono.Messaging/Mono.Messaging/MessagingProviderLocator.cs @@ -43,14 +43,14 @@ namespace Mono.Messaging public class MessagingProviderLocator { public static readonly TimeSpan InfiniteTimeout = TimeSpan.MaxValue; - private static readonly MessagingProviderLocator instance = new MessagingProviderLocator(); + private static readonly MessagingProviderLocator instance = new MessagingProviderLocator(); private readonly IMessagingProvider provider; - + private const string MESSAGING_PROVIDER_KEY = "MONO_MESSAGING_PROVIDER"; private MessagingProviderLocator () { - string providerName = System.Environment.GetEnvironmentVariable("MONO_MESSAGING_PROVIDER"); + string providerName = GetProviderClassName (); if (providerName == null || providerName == "") - throw new Exception("Environment Variable MONO_MESSAGING_PROVIDER not defined"); + throw new Exception("Configuration/Environment Variable MONO_MESSAGING_PROVIDER not defined"); provider = CreateProvider (providerName); } @@ -63,9 +63,22 @@ namespace Mono.Messaging return Instance.provider; } +#if NET_2_0 || BOOTSTRAP_NET_2_0 || NET_3_0 || NET_2_1 || NET_3_0 || NET_3_5 || NET_4_0 || BOOTSTRAP_NET_4_0 + private string GetProviderClassName () + { + string className = System.Configuration.ConfigurationSettings.AppSettings[MESSAGING_PROVIDER_KEY]; + return className != null ? className : System.Environment.GetEnvironmentVariable(MESSAGING_PROVIDER_KEY); + } +#else + private string GetProviderClassName () + { + return System.Environment.GetEnvironmentVariable(MESSAGING_PROVIDER_KEY); + } +#endif + private IMessagingProvider CreateProvider (string className) { - Type t = Type.GetType (className); + Type t = ResolveType (className); if (t == null) throw new Exception ("Can't find class: " + className); @@ -78,6 +91,17 @@ namespace Mono.Messaging return (IMessagingProvider) ci.Invoke (new object[0]); } - + + private Type ResolveType (string classNameOrAlias) + { + switch (classNameOrAlias) { + case "rabbitmq": + case "Mono.Messaging.RabbitMQ.RabbitMQMessagingProvider,Mono.Messaging.RabbitMQ": + Assembly a = Assembly.Load (Consts.AssemblyMono_Messaging_RabbitMQ); + return a.GetType ("Mono.Messaging.RabbitMQ.RabbitMQMessagingProvider"); + default: + throw new MonoMessagingException ("Unknown MessagingProvider class name or alias: " + classNameOrAlias); + } + } } } |