private async Task UpdateRecloserOutageMap(long recloserId, List <long> affectedConsumersGids, OutageEntity createdActiveOutage) { var enumerableRecloserOutageMap = await RecloserOutageMap.GetEnumerableDictionaryAsync(); if (enumerableRecloserOutageMap.TryGetValue(recloserId, out Dictionary <long, List <long> > outageToAffectedConsumersMap)) { if (outageToAffectedConsumersMap.ContainsKey(createdActiveOutage.OutageId)) { outageToAffectedConsumersMap[createdActiveOutage.OutageId] = new List <long>(affectedConsumersGids); } else { outageToAffectedConsumersMap.Add(createdActiveOutage.OutageId, affectedConsumersGids); } await RecloserOutageMap.SetAsync(recloserId, outageToAffectedConsumersMap); } else { var outageIdToAffectedConsumersMap = new Dictionary <long, List <long> >() { { createdActiveOutage.OutageId, affectedConsumersGids } }; await RecloserOutageMap.SetAsync(recloserId, outageIdToAffectedConsumersMap); } }
private async Task OnZeroAffectedConsumersCase(long elementGid, IHistoryDBManagerContract historyDBManagerClient) { bool isSwitchInvoked = false; var enumerableRecloserOutageMap = await RecloserOutageMap.GetEnumerableDictionaryAsync(); if (enumerableRecloserOutageMap.TryGetValue(elementGid, out Dictionary <long, List <long> > outageAffectedPair)) { foreach (var pair in outageAffectedPair) { //await historyDBManagerClient.OnConsumerBlackedOut(pair.Value, pair.Key); //await historyDBManagerClient.OnSwitchOpened(elementGid, pair.Key); isSwitchInvoked = true; } } //if (!isSwitchInvoked) //{ // await historyDBManagerClient.OnSwitchOpened(elementGid, null); //} }