private async Task SuspensionsHubSignalRClient_OnSuspensionUpdated(object _, SuspensionUpdatedEventArgs e)
        {
            if (string.Equals(e.ChannelOfOrigin, CurrentlySelectedChannel, StringComparison.OrdinalIgnoreCase))
            {
                UserRulesExceededModels = await apiGateway.Get <List <UserRulesExceededModel> >("channels", routeValues : new string[] { CurrentlySelectedChannel, "channelRules", "exceeded" }).ConfigureAwait(false);

                NotifyStateChanged();
            }
        }
        private async Task SuspensionsHub_SuspensionUpdated(object _, SuspensionUpdatedEventArgs args)
        {
            if (Suspensions.Any(x => x.SuspensionId == args.SuspensionId))
            {
                var qParam        = new QueryParam("suspensionId", args.SuspensionId.ToString());
                var newSuspension = await apiGateway.Get <SuspensionModel>("suspensions", queryParams : qParam).ConfigureAwait(false);

                UpdateState(newSuspension);
            }
        }
Beispiel #3
0
        private async Task SuspensionsHub_SuspensionUpdated(object _, SuspensionUpdatedEventArgs args)
        {
            if (!string.Equals(CurrentlySelectedChannel, args.ChannelOfOrigin, StringComparison.OrdinalIgnoreCase))
            {
                return;
            }

            var qParam            = new QueryParam("suspensionId", args.SuspensionId.ToString());
            var updatedSuspension = await apiGateway.Get <SuspensionModel>("suspensions", queryParams : qParam).ConfigureAwait(false);

            if (updatedSuspension == null)
            {
                return;
            }

            var existingSuspension = Suspensions.Find(x => x.SuspensionId == args.SuspensionId);

            Suspensions.Remove(existingSuspension);
            Suspensions.Add(updatedSuspension);

            NotifyStateChanged();
        }