using JD.Remoting; using JD.Remoting.Services; using Plume.ErrorList; using Plume.Interfaces.Modules; using Plume.Interfaces.WPF.Modules; using Plume.Output; namespace JD.EngineLogger { public sealed class EngineLoggerModule : IWpfModule { private ErrorListModule _errorListModule; private OutputModule _outputModule; private IModuleSetup _setup; public void Dispose() { _errorListModule?.Dispose(); _outputModule?.Dispose(); } /// public void Setup(IModuleSetup setup) { _setup = setup; } /// public void Initialize(IWpfModuleContext context) { EngineLoggerPlugin plugin = new EngineLoggerPlugin(context.LoggerManager); context.ServiceManager.GetPluginService().Register(plugin); _errorListModule = new ErrorListModule(); _errorListModule.Setup(new ErrorListModuleSetup(plugin.ErrorListProvider)); _errorListModule.Initialize(context); _outputModule = new OutputModule(); _outputModule.Setup(new OutputModuleSetup(plugin.OutputProvider)); _outputModule.Initialize(context); } } }