public async Task <ActionResult> UpdateScore([FromBody] UpdateScoreRequest request) { if (request.Score < 0 || request.Score > 5) { return(BadRequest("Score is out of range")); } if (string.IsNullOrWhiteSpace(request.Player)) { return(BadRequest("Player must be provided")); } var command = new UpdateScoreCommand { Score = request.Score, Player = request.Player }; var result = await _mediator.Send(command); if (!result.Success) { if (result.ResponseCode == 404) { return(NotFound("Player not found")); } return(StatusCode(500, "Unable to fulfill request at this time")); } return(StatusCode(204)); }
//[ProducesResponseType((int)HttpStatusCode.Created, Type = typeof(CreatedAtActionResult))] //[SwaggerOperation("Post")] public async Task <IActionResult> UpdateScore([FromBody] UpdateScoreRequest request) { if (!ModelState.IsValid) { return(await Task.FromResult(BadRequest(ModelState))); } var score = await this.ScoreDbRepository.GetScore(request.Score.UserId).ConfigureAwait(false); var scoreDto = this.Mapper.Map <ScoreDto>(score); if (scoreDto != null && scoreDto.Score > request.Score.Score) { return(await Task.FromResult(BadRequest(new { Error = "Higher score already exists!" }))); } var scoreModel = new ScoreMongoModel { Id = request.Score.UserId, Score = request.Score.Score, UserName = request.Score.UserName }; if (score == null) { await this.ScoreDbRepository.AddScore(scoreModel); } else { await this.ScoreDbRepository.UpdateScore(scoreModel).ConfigureAwait(false); } return(await Task.FromResult(Created("/scores/{userId}", request))); }
public void RequestUpdateScore(Action <Client, UpdateScoreResponse> callback) { UpdateScoreRequest request = new UpdateScoreRequest(); AddCallback(callback, request); SendMessage(request); }
public void UpdateScoreRequestHandler(UpdateScoreRequest request) { UpdateScoreResponse response = new UpdateScoreResponse(request, this.InGameProperties.WinGame, this.OtherSideReceiver.InGameProperties.WinGame); this.SendMessage(response); }
public async Task <IActionResult> UpdateScore(string username, [FromBody] UpdateScoreRequest request) { if (await _command.UpdateUserScore(username, request.Score)) { return(Ok()); } return(NotFound()); }
public ActionResult UpdateScore([FromBody] UpdateScoreRequest request) { if (string.IsNullOrEmpty(request.GameId)) { return(new NotFoundResult()); } var foundGame = GameStates.Cache.TryGetValue(request.GameId, out GameState game); if (!foundGame) { return(new NotFoundResult()); } game.UpdateScore(request.Team, request.Increment); return(Ok()); }
public UpdateScoreResponse(UpdateScoreRequest request, int socre_1, int score_2) : base(request) { Score_1 = socre_1; Score_2 = score_2; }
public UpdateScoreResponse(UpdateScoreRequest request) : base(request) { }