public async Task <UpdatePlayerResponse> Handle(UpdatePlayerRequest request, CancellationToken cancellationToken)
        {
            var query = new GetPlayerByIdQuery()
            {
                Id = request.playerId
            };
            var gotPlayer = await this.queryExecutor.Execute(query);

            if (gotPlayer == null)
            {
                return new UpdatePlayerResponse()
                       {
                           Data = null
                       }
            }
            ;
            var command = new UpdatePlayerCommand()
            {
                Parameter = this.mapper.Map(request, gotPlayer)
            };
            var player = await this.commandExecutor.Execute(command);

            return(new UpdatePlayerResponse()
            {
                Data = this.mapper.Map <Domain.Models.Player>(player)
            });
        }
    }
        public async Task <IActionResult> Get([FromRoute] GetPlayerByIdQuery query)
        {
            var player = await _mediator.Send(query);

            if (player == null)
            {
                return(NotFound(query.Id));
            }

            return(Ok(player));
        }
Example #3
0
        public async Task <IActionResult> GetPlayerById([FromRoute] GetPlayerByIdQuery query)
        {
            _logger.LogInformation(LoggingEvents.GetItem, "Getting player {id}", query.Id);
            var player = await CommandAsync(query);

            if (player == null)
            {
                _logger.LogWarning(LoggingEvents.GetItemNotFound, "Player {id} not found", query.Id);
                return(NotFound());
            }

            return(Ok(player));
        }
Example #4
0
        public async Task <GetPlayerByIdResponse> Handle(GetPlayerByIdRequest request, CancellationToken cancellationToken)
        {
            var query = new GetPlayerByIdQuery()
            {
                Id = request.PlayerId
            };
            var player = await this.queryExecutor.Execute(query);

            var mappedPlayer = this.mapper.Map <Domain.Models.Player>(player);
            var response     = new GetPlayerByIdResponse()
            {
                Data = mappedPlayer
            };

            return(response);
        }