/// <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); }
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);