Example #1
0
        public async Task <QueryResult <IEnumerable <RoomListItemDto> > > Handle(GetRoomsMessage request, CancellationToken cancellationToken)
        {
            _logger.LogInformation($"{nameof(GetRoomsHandler)} - Handler - Start");

            _logger.LogInformation("generating specification from request");
            var specification = new RoomSpecification(request);

            _logger.LogInformation("retrieving result from manager");
            var result = await _manager.GetAsync(specification);

            _logger.LogInformation($"mapping result to dto");
            var data = _mapper.Map <IEnumerable <RoomEntity>, IEnumerable <RoomListItemDto> >(result);

            _logger.LogInformation($"creating {nameof(QueryResult)} from mapped data");
            var queryResult = QueryResult <IEnumerable <RoomListItemDto> > .New(data);

            _logger.LogInformation($"{nameof(GetRoomsHandler)} - Handler - End");

            return(queryResult);
        }
Example #2
0
        public async Task <IActionResult> GetRoomsAsync([FromQuery] GetRoomsMessage message)
        {
            var result = await _mediator.Send(message);

            return(Ok(result));
        }