/// <summary> /// Initializes a new <see cref="FusionMaid"/> with it's dependencies. /// </summary> /// <param name="logService">Service used for logging.</param> /// <param name="fusionCatalogue">Catalogue used to trace the location of fusion(s).</param> public FusionMaid( ILog logService, IFusionCatalogue fusionCatalogue) { this.logService = logService; this.fusionCatalogue = fusionCatalogue; }
/// <summary> /// Initializes a new <see cref="FusionExtractor"/>. /// </summary> /// <param name="logService">Service used for logging.</param> /// <param name="configStore">Store used for configuration loading.</param> /// <param name="fusionMaid">Virtual maid that cleans the old fusions.</param> /// <param name="fusionCatalogue">Catalogue used to resolve locations of fusions.</param> public FusionExtractor( ILog logService, IConfigStore configStore, IFusionMaid fusionMaid, IFusionCatalogue fusionCatalogue) { this.logService = logService; this.configStore = configStore; this.fusionMaid = fusionMaid; this.fusionCatalogue = fusionCatalogue; }
/// <summary> /// Initializes a new <see cref="FusionProcess"/>. /// </summary> /// <param name="fusionId">Identity of the fusion.</param> /// <param name="logService">Service used for logging.</param> /// <param name="configStore">Store used for loading configuration.</param> /// <param name="fusionCatalogue">Catalogue used to resolve locations of fusions.</param> /// <param name="httpFailurePolicy">Failure policy used for http request(s).</param> public FusionProcess( string fusionId, ILog logService, IConfigStore configStore, IFusionCatalogue fusionCatalogue, IHttpFailurePolicy httpFailurePolicy) { EnsureArg.IsNotNullOrEmpty(fusionId, nameof(fusionId)); FusionId = fusionId; this.logService = logService; this.configStore = configStore; this.fusionCatalogue = fusionCatalogue; this.httpFailurePolicy = httpFailurePolicy; process = new WinProcess(); CpuCounter = new PerformanceCounter("Process", "% Processor Time"); MemoryCounter = new PerformanceCounter("Process", "Working Set - Private"); ChangeState(FusionProcessState.None); }