public static GetCharactersDto ToGetCharactersDto(this GetCharactersRequestMessage requestMessage)
 => new GetCharactersDto
 {
     Name     = requestMessage.Name,
     House    = requestMessage.House,
     Patronus = requestMessage.Patronus,
     Role     = requestMessage.Role,
     School   = requestMessage.School
 };
        public async Task <Response <List <CharacterResponseMessage> > > GetCharacterAsync(GetCharactersRequestMessage requestMessage, string httpClientConfigurationName)
        {
            if (requestMessage == null)
            {
                requestMessage = new GetCharactersRequestMessage();
            }

            return(await HttpService.GetManyAsync <CharacterResponseMessage>(
                       $"{ResourceName}?name={requestMessage.Name}&role={requestMessage.Role}&school={requestMessage.School}&house={requestMessage.House}&patronus={requestMessage.Patronus}", httpClientConfigurationName));
        }
Example #3
0
 public async Task <IActionResult> GetCharacterAsync([FromQuery] GetCharactersRequestMessage requestMessage)
 => await WithResponseAsync(() => MakeMagicServiceConnector.GetCharacterAsync(requestMessage, httpClientConfigurationName));
Example #4
0
        public async Task <Response <List <CharacterResponseMessage> > > GetCharacterAsync(GetCharactersRequestMessage requestMessage)
        {
            var response = Response <List <CharacterResponseMessage> > .Create();

            if (requestMessage == null)
            {
                return(response.WithBusinessError("Invalid data for search character"));
            }

            var characters = await CharacterRepository.FindAsNoTrackingAsync(requestMessage.ToGetCharactersDto());

            if (!characters.Any())
            {
                return(response.WithBusinessError("No characters with the requested characteristics."));
            }

            return(response.SetValue(characters.ToListCharactersResponseMessage()));
        }
 public async Task <IActionResult> GetCharacterAsync([FromQuery] GetCharactersRequestMessage requestMessage)
 => await WithResponseAsync(() => CharacterApplicationService.GetCharacterAsync(requestMessage));