Пример #1
0
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            DeleteGameResponse response = new DeleteGameResponse();


            return(response);
        }
Пример #2
0
        public Task DeleteGameAsync(GameDTO targetGame, long relativeTeamId, CancellationTokenSource cancellationTokenSource) =>
        Task.Run(async() => {
            if (!CrossConnectivity.Current.IsConnected)
            {
                throw new InvalidOperationException(AppConsts.ERROR_INTERNET_CONNECTION);
            }

            DeleteGameRequest deleteGameRequest = new DeleteGameRequest()
            {
                AccessToken = GlobalSettings.Instance.UserProfile.AccesToken,
                Url         = string.Format(GlobalSettings.Instance.Endpoints.ScheduleEndpoints.DeleteGame, targetGame.Id),
                Data        = new DeleteGameDataModel()
                {
                    GameId = targetGame.Id,
                    TeamId = relativeTeamId
                }
            };

            try {
                DeleteGameResponse deleteGameResponse = await _requestProvider.PostAsync <DeleteGameRequest, DeleteGameResponse>(deleteGameRequest);

                if (deleteGameResponse == null)
                {
                    throw new InvalidOperationException(DELETE_GAME_COMMON_ERROR_MESSAGE);
                }
            }
            catch (HttpRequestExceptionEx exc) {
                DeleteGameResponse deleteGameBadResponse = JsonConvert.DeserializeObject <DeleteGameResponse>(exc.Message);

                string output = string.Format("{0}",
                                              deleteGameBadResponse.Errors?.FirstOrDefault());

                output = (string.IsNullOrWhiteSpace(output) || string.IsNullOrEmpty(output)) ? DELETE_GAME_COMMON_ERROR_MESSAGE : output.Trim();

                throw new InvalidOperationException(output);
            }
            catch (Exception exc) {
                Crashes.TrackError(exc);

                throw;
            }
        }, cancellationTokenSource.Token);