Axiom.Core.PluginManager.LoadPlugin C# (CSharp) Method

LoadPlugin() private static method

Loads a plugin of the given class name from the given assembly, and calls Initialize() on it. This function does NOT add the plugin to the PluginManager's list of plugins.
private static LoadPlugin ( ObjectCreator creator ) : IPlugin
creator ObjectCreator
return IPlugin
		private static IPlugin LoadPlugin( ObjectCreator creator )
		{
			try
			{
				// create and start the plugin
				IPlugin plugin = creator.CreateInstance<IPlugin>();

                if (plugin == null)
                {
                    LogManager.Instance.Write("Failed to load plugin: {0}", creator.GetAssemblyTitle());
                    return null;
                }

			    plugin.Initialize();

				LogManager.Instance.Write( "Loaded plugin: {0}", creator.GetAssemblyTitle() );

				return plugin;
			}
			catch ( Exception ex )
			{
				LogManager.Instance.Write( LogManager.BuildExceptionString( ex ) );
			}

			return null;
		}