public async Task Commit() { try { this.unitOfWork.Complete(); await OpenedSwitches.ClearAsync(); await UnenergizedConsumers.ClearAsync(); await HistoryModelChanges.ClearAsync(); string message = $"{baseLogString} Commit => {MicroserviceNames.OmsHistoryDBManagerService} confirmed model changes."; Logger.LogInformation(message); await LogAllReliableCollections(); } catch (Exception e) { string message = $"{baseLogString} Commit => Exception: {e.Message}"; Logger.LogError(message, e); } finally { this.unitOfWork.Dispose(); this.unitOfWork = null; } }
private async Task LogAllReliableCollections() { while (!ReliableDictionariesInitialized) { await Task.Delay(1000); } StringBuilder sb = new StringBuilder(); sb.AppendLine("Reliable Collections"); sb.AppendLine("OpenedSwitches =>"); var openedSwitches = await OpenedSwitches.GetEnumerableDictionaryAsync(); foreach (var element in openedSwitches) { sb.AppendLine($"Key => {element.Key}, Value => 0x{element.Value:X16}"); } sb.AppendLine(); sb.AppendLine("UnenergizedConsumers =>"); var unenergizedConsumers = await UnenergizedConsumers.GetEnumerableDictionaryAsync(); foreach (var element in unenergizedConsumers) { sb.AppendLine($"Key => 0x{element.Key:X16}, Value => 0x{element.Value:X16}"); } sb.AppendLine(); sb.AppendLine("HistoryModelChanges =>"); var historyModelChanges = await HistoryModelChanges.GetEnumerableDictionaryAsync(); foreach (var element in historyModelChanges) { sb.AppendLine($"Key => 0x{element.Key:X16}, Value => changes count: {element.Value.Count}"); } sb.AppendLine(); Logger.LogDebug($"{baseLogString} LogAllReliableCollections => {sb}"); }