Пример #1
0
 /// <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;
                }
            };
        }