Esempio n. 1
0
        public bool StopOutageSimulation(long outageElementId)
        {
            //TODO: END TASK HERE

            if (!outageTokenMap.ContainsKey(outageElementId))
            {
                return(false);
            }

            outageTokenMap[outageElementId].Cancel();
            outageTokenMap.Remove(outageElementId);

            if (!activeOutagesMap.ContainsKey(outageElementId))
            {
                return(false);
            }

            ActiveOutageBindingModel outage = activeOutagesMap[outageElementId];

            ActiveOutages.Remove(outage);
            activeOutagesMap.Remove(outageElementId);

            OnPropertyChanged("IsSelectedOutageGridVisible");
            OnPropertyChanged("OutageElement");
            OnPropertyChanged("OptimumIsolationPoints");
            OnPropertyChanged("DefaultIsolationPoints");

            return(true);
        }
Esempio n. 2
0
        private async Task EndOutage()
        {
            var outageElementId = SelectedOutage.OutageElement.GID;

            var outageSimulatorUIClient = OutageSimulatorUIClient.CreateClient();

            if (await outageSimulatorUIClient.EndOutage(outageElementId))
            {
                if (!activeOutagesMap.ContainsKey(outageElementId))
                {
                    return;
                }

                ActiveOutageBindingModel outage = activeOutagesMap[outageElementId];
                ActiveOutages.Remove(outage);
                activeOutagesMap.Remove(outageElementId);

                OnPropertyChanged("ActiveOutages");
                OnPropertyChanged("SelectedOutage");
                OnPropertyChanged("IsSelectedOutageGridVisible");
                OnPropertyChanged("OutageElement");
                OnPropertyChanged("OptimumIsolationPoints");
                OnPropertyChanged("DefaultIsolationPoints");
            }
        }