/// <summary> /// Create a new host for this module /// </summary> /// <param name="mod">The module to host</param> public ModuleHost(AbstractModule mod, ServerContext context, Messenger messenger, BaseConfiguration config) { this.HostedModule = mod; this.ExitHandle = new EventWaitHandle(false, EventResetMode.ManualReset); mod.Messenger = messenger; mod.SetConfiguration(config); mod.SetContext(context); mod.OnFinishedStopping += env_OnFinishedStopping; }
private void StartSubsystem(AbstractModule mod) { Console.WriteLine("Starting: " + mod.ToString()); ModuleHost host = new ModuleHost(mod, this.serverContext, messenger, this.config); modHosts.Add(host); host.Start(); }