/// <summary> /// Initializes a new instance of the <see cref="SmartDetectorRunner"/> class. /// </summary> /// <param name="smartDetector">The Smart Detector.</param> /// <param name="analysisServicesFactory">The analysis services factory.</param> /// <param name="smartDetectorManifest">The Smart Detector manifest.</param> /// <param name="stateRepositoryFactory">The state repository factory</param> /// <param name="azureResourceManagerClient">The Azure Resource Manager client</param> /// <param name="logArchive">The log archive.</param> public SmartDetectorRunner( ISmartDetector smartDetector, IInternalAnalysisServicesFactory analysisServicesFactory, SmartDetectorManifest smartDetectorManifest, IStateRepositoryFactory stateRepositoryFactory, IExtendedAzureResourceManagerClient azureResourceManagerClient, IPageableLogArchive logArchive) { this.smartDetector = smartDetector; this.analysisServicesFactory = analysisServicesFactory; this.smartDetectorManifest = smartDetectorManifest; this.logArchive = logArchive; this.IsSmartDetectorRunning = false; this.Alerts = new ObservableCollection <EmulationAlert>(); this.stateRepositoryFactory = stateRepositoryFactory; this.azureResourceManagerClient = azureResourceManagerClient; }
public TracesControlViewModel(IEmulationSmartDetectorRunner smartDetectorRunner, IPageableLogArchive logArchive, ITracer tracer) : this() { this.tracer = tracer; this.logArchive = logArchive; smartDetectorRunner.PropertyChanged += (sender, args) => { if (args.PropertyName == nameof(smartDetectorRunner.PageableLog)) { this.PageableLog = smartDetectorRunner.PageableLog; } else if (args.PropertyName == nameof(smartDetectorRunner.IsSmartDetectorRunning)) { this.IsSmartDetectorRunning = smartDetectorRunner.IsSmartDetectorRunning; } }; }