Example #1
0
 /// <summary>
 /// Initializes a new instance of the TabDashboardViewModel class.
 /// </summary>
 public TabRequirementViewModel(IStressDataProvider provider, MainViewModel mainVm)
 {
     _dataProvider         = provider;
     _iothubrecommendation = "";
     _vmRecommendation     = "";
     _buttonEnabled        = false;
 }
Example #2
0
 public TabMonitorViewModel(IStressDataProvider provider)
 {
     _consumerGroupName  = "$Default";
     _selectedPartition  = "0";
     _startTime          = "0";
     _dataProvider       = provider;
     _shadeVisibility    = Visibility.Hidden;
     _partitions         = new ObservableCollection <string>();
     _messageContent     = "N/A"; _fromDevice = "N/A";
     TestRunTime         = "N/A"; Throughput = "N/A";
     DeviceToHubDelayAvg = "N/A"; DeviceToHubDelay1Min = "N/A";
     _taskStatus         = "N/A"; _localRunTime = "N/A";
     Messenger.Default.Register <IStressDataProvider>(
         this,
         "StartMonitor",
         ProcessMonitorConfig
         );
     _refreshDataTimer           = new Timer();
     _refreshTaskTimer           = new Timer();
     _refreshDataTimer.Elapsed  += ObserveData;
     _refreshTaskTimer.Elapsed  += ObserveTask;
     _refreshDataTimer.AutoReset = true;
     _refreshTaskTimer.AutoReset = true;
     //fetch data and refresh UI every sec
     //fetch task and refresh UI every 5 sec
     _refreshDataTimer.Interval = 1000;
     _refreshTaskTimer.Interval = 5000;
     Reload = new RelayCommand(StartCollecting);
 }
 public MainViewModel(IStressDataProvider provider)
 {
     _dataProvider = provider;
     Messenger.Default.Register <RequirementMessage>(
         this,
         "AppendRequirementParam",
         message => AppendToProvider(message)
         );
 }
Example #4
0
 void ProcessRunConfigValue(IStressDataProvider provider)
 {
     provider.BatchKey = _batchAccountKey;
     provider.HubOwnerConectionString = _hubOwnerConnectionString;
     provider.EventHubEndpoint        = _eventHubEndpoint;
     provider.BatchUrl = _batchServiceUrl;
     provider.StorageAccountConectionString = _storageAccountConnectionString;
     provider.Run();
 }
Example #5
0
 public void ProcessMonitorConfig(IStressDataProvider provider)
 {
     _hubDataReceiver = new HubReceiver(provider);
     BatchJobId       = provider.BatchJobId;
     _hubDataReceiver.StartReceive();
     localwatch = Stopwatch.StartNew();
     StartCollecting();
     IsSwitchingEnabled(true);
     EnablePortalBtn();
 }
Example #6
0
 void ProcessMonitorConfig(IStressDataProvider provider)
 {
     InitBindingData();
     _hubDataReceiver = new HubReceiver(provider);
     _hubDataReceiver.SetConsumerGroup(_consumerGroupName);
     BatchJobId = provider.BatchJobId;
     _hubDataReceiver.StartReceive();
     localwatch = Stopwatch.StartNew();
     StartCollecting();
     Messenger.Default.Send($"Monitoring started, please switch to monitor tab", "RunningLog");
     IsSwitchingEnabled(true);
     EnablePortalBtn();
 }
        void ProcessRunConfigValue(IStressDataProvider provider)
        {
            provider.BatchKey = _batchAccountKey;
            provider.HubOwnerConectionString = _hubOwnerConnectionString;
            provider.EventHubConectionString = _eventHubConnectionString;
            provider.BatchUrl = _batchServiceUrl;
            provider.StorageAccountConectionString = _storageAccountConnectionString;
            provider.Run();

            DeviceLines               = new ObservableCollection <MyLine>();
            MessageLines              = new ObservableCollection <MyLine>();
            _deviceNumberBuffer       = new Queue <double>();
            _messageNumberBuffer      = new Queue <double>();
            _refreshDataTimer.Enabled = true;
        }
        /// <summary>
        /// Initializes a new instance of the TabDashboardViewModel class.
        /// </summary>
        public TabRequirementViewModel(IStressDataProvider provider, MainViewModel mainVm)
        {
            _dataProvider         = provider;
            _iothubrecommendation = "";
            _vmRecommendation     = "";
            _buttonEnabled        = false;

            var totaldevice = ConfigurationHelper.ReadConfig(StressToolConstants.TotalDevice_ConfigName, "60");
            var messagefreq = ConfigurationHelper.ReadConfig(StressToolConstants.MessageFreq_ConfigName, "6");
            var duration    = ConfigurationHelper.ReadConfig(StressToolConstants.ExpectDuration_ConfigName, "2");

            TotalDevice            = totaldevice;
            MessagePerMinPerDevice = messagefreq;
            TestDuration           = duration;
        }
 /// <summary>
 /// Initializes a new instance of the TabDashboardViewModel class.
 /// </summary>
 public TabDashboardViewModel(IStressDataProvider provider)
 {
     Messenger.Default.Register <IStressDataProvider>(
         this,
         "StartTest",
         data => ProcessRunConfigValue(data)
         );
     _dataProvider               = provider;
     _summaryVisibility          = Visibility.Hidden;
     _canStartTest               = false;
     _refreshDataTimer           = new System.Timers.Timer();
     _refreshDataTimer.Elapsed  += ObserveData;
     _refreshDataTimer.AutoReset = true;
     //fetch data and refresh UI 1 time/sec
     _refreshDataTimer.Interval = 300;
 }
Example #10
0
 public HubReceiver(IStressDataProvider provider)
 {
     try
     {
         var builder = IotHubConnectionStringBuilder.Create(provider.HubOwnerConectionString);
         configSettings = new Settings();
         configSettings.ConnectionString    = $"Endpoint={provider.EventHubEndpoint};SharedAccessKeyName={builder.SharedAccessKeyName};SharedAccessKey={builder.SharedAccessKey}";
         configSettings.Path                = builder.HostName.Split('.').First();
         configSettings.PartitionId         = "0";
         configSettings.GroupName           = "$Default";
         configSettings.StartingDateTimeUtc = DateTime.UtcNow - TimeSpan.FromMinutes(2);
         pause      = false;
         workThread = new Thread(() => FetchHubData());
         workThread.Start();
     }
     catch
     {
     }
 }
Example #11
0
        /// <summary>
        /// Initializes a new instance of the TabDashboardViewModel class.
        /// </summary>
        public TabResourceViewModel(IStressDataProvider provider)
        {
            //receive message from tab 1, append to provider.
            Messenger.Default.Register <RequirementMessage>(
                this,
                "AppendRequirementParam",
                data => AppendToProvider(data)
                );
            //receive message from data provider, show log
            Messenger.Default.Register <string>(
                this,
                "RunningLog",
                msg => ShowLog(msg)
                );
            //receive message from data provider, update phase and status
            Messenger.Default.Register <DeployStatusUpdateMessage>(
                this,
                "DeployStatus",
                message => SetDeployStatus(message)
                );
            //receive batch job id from data provider(middle)
            Messenger.Default.Register <string>(
                this,
                "BatchJobId",
                AppendBatchJobId
                );

            //init ui controls
            _selectedJobIdIndex = -1;
            UseExistingJobId    = false;
            CreateNewJobId      = true;
            _lableVisibilities  = new Visibility[5] {
                Visibility.Hidden, Visibility.Hidden, Visibility.Hidden, Visibility.Hidden, Visibility.Hidden
            };
            _batchJobs          = new ObservableCollection <string>();
            _specDeviceCount    = _specDuration = _specMsgFreq = "Not Specified";
            _currentDeployPhase = DeployPhase.DeployStarted;
            _currentPhaseStatus = PhaseStatus.Succeeded;
            _dataProvider       = provider;
            _canStartCreate     = false;
            LoadConfig();
        }
Example #12
0
        /// <summary>
        /// Initializes a new instance of the TabDashboardViewModel class.
        /// </summary>
        public TabResourceViewModel(IStressDataProvider provider)
        {
            Messenger.Default.Register <RequirementMessage>(
                this,
                "AppendRequirementParam",
                data => AppendToProvider(data)
                );

            Messenger.Default.Register <IStressDataProvider>(
                this,
                "StartTest",
                data => ProcessRunConfigValue(data)
                );
            Messenger.Default.Register <string>(
                this,
                "RunningLog",
                msg => ShowLog(msg)
                );
            Messenger.Default.Register <DeployStatusUpdateMessage>(
                this,
                "DeployStatus",
                message => SetDeployStatus(message)
                );
            Messenger.Default.Register <string>(
                this,
                "BatchJobId",
                AppendBatchJobId
                );
            _lableVisibilities = new Visibility[5] {
                Visibility.Hidden, Visibility.Hidden, Visibility.Hidden, Visibility.Hidden, Visibility.Hidden
            };

            _specDeviceCount    = _specDuration = _specMsgFreq = "Not Specified";
            _currentDeployPhase = DeployPhase.DeployStarted;
            _currentPhaseStatus = PhaseStatus.Succeeded;
            _dataProvider       = provider;
            _canStartTest       = false;
        }
Example #13
0
        public TabMonitorViewModel(IStressDataProvider provider)
        {
            _dataProvider      = provider;
            _consumerGroupName = ConfigurationHelper.ReadConfig(StressToolConstants.ConsumerGroup_ConfigName, "$Default");
            InitBindingData();
            Messenger.Default.Register <IStressDataProvider>(
                this,
                "StartMonitor",
                ProcessMonitorConfig
                );
            _refreshDataTimer           = new Timer();
            _refreshTaskTimer           = new Timer();
            _refreshDataTimer.Elapsed  += ObserveData;
            _refreshTaskTimer.Elapsed  += ObserveTask;
            _refreshDataTimer.AutoReset = true;
            _refreshTaskTimer.AutoReset = true;
            //fetch data and refresh UI every sec
            //fetch task and refresh UI every 5 sec
            _refreshDataTimer.Interval = 1000;
            _refreshTaskTimer.Interval = 5000;

            InitChart();
        }
Example #14
0
 public MainViewModel(IStressDataProvider provider)
 {
     _dataProvider = provider;
 }
Example #15
0
 bool IsDeployValuesValid(IStressDataProvider provider)
 {
     return(false);
 }