Ejemplo n.º 1
0
        public async Task PostActivityReplyAsync(AniListActivity activity, int activityPosition, string text)
        {
            var postResp = await AniListService.PostActivityReply(activity.Id, text, default);

            postResp.Switch((IAniListError error) =>
            {
                View.UpdateActivity(activityPosition, activity);
                View.DisplaySnackbarMessage("Error occurred while posting reply", Snackbar.LengthLong);
            })
            .Switch(async reply =>
            {
                var refreshResp = await AniListService.GetAniListActivityById(activity.Id, default);

                refreshResp.Switch((IAniListError error) =>
                {
                    View.UpdateActivity(activityPosition, activity);
                    View.DisplaySnackbarMessage("Error occurred while refreshing activity", Snackbar.LengthLong);
                })
                .Switch(activityResp =>
                {
                    View.UpdateActivity(activityPosition, activityResp);
                    View.DisplaySnackbarMessage("Reply posted successfully", Snackbar.LengthShort);
                });
            });
        }
Ejemplo n.º 2
0
        public async Task UpdateActivityAsync(AniListActivity activity, int activityPosition)
        {
            var activityResp = await AniListService.GetAniListActivityById(activity.Id, default);

            activityResp.Switch((IAniListError error) => View.DisplaySnackbarMessage("Error occurred while refreshing activity", Snackbar.LengthLong))
            .Switch(updatedAct => View.UpdateActivity(activityPosition, updatedAct));
        }