public DefaultPluginManager(FusionContext fusionContext)
            : base(fusionContext, true, true)
        {
            AssemblyName assemblyName = Assembly.GetExecutingAssembly().GetName();
            Log.DebuggerWrite(0, LogCategory, "Hyphen Plugin Manager v" + assemblyName.Version.ToString() + " is initializing, please wait...");            

            FirePrimaryPluginManagerInitializedEvent(this, EventArgs.Empty);
            Log.DebuggerWrite(0, LogCategory, "Default Plugin Manager initialized.");
        }
Beispiel #2
0
        public void LoadPluginManager(FusionContext context)
        {
            PluginManagerBase customManager = null;

            try
            {
                string fusionAssemblyName = RuntimeConfiguration.Singleton.CustomFusionAssemblyName;
                string pluginManagerTypeName = RuntimeConfiguration.Singleton.CustomPluginManagerTypeName;

                if (!String.IsNullOrEmpty(fusionAssemblyName) && !String.IsNullOrEmpty(pluginManagerTypeName))
                    customManager = InstantiateRemoteObject<PluginManagerBase>(fusionAssemblyName, pluginManagerTypeName, context);
            }
            catch (Exception e)
            {
                Log.DebuggerWrite(0, Loader.LogCategory, "Unable to load custom plugin manager (" + e.Message + "), defaulting to the built-in one.");
            }

            pluginManager = customManager ?? InstantiateRemoteObject<PluginManagerBase>(GetType().Assembly.FullName, typeof(DefaultPluginManager).FullName, context);
        }
Beispiel #3
0
 /// <summary>
 /// Initializes a fusion context.
 /// </summary>
 private void InitializeFusionContext()
 {
     FusionContext = new FusionContext(this, IsolatedPluginsSandbox.AssemblyProbe, PluginLink.NativePluginLinkPtr);
 }