public async Task <IList <TemplateStateDTO> > HandleAsync(GetTemplateStatesQuery query)
        {
            var states = await repository.TemplateState.FindAllTemplateStatesAsync();

            var statesNames = new List <TemplateStateDTO>();

            foreach (var state in states)
            {
                statesNames.Add(TemplateStateDTO.ParseTemplateStateDTO(state));
            }
            return(statesNames);
        }
        public async Task <IActionResult> GetTemplateStates()
        {
            LogBeginOfRequest();
            try
            {
                var query  = new GetTemplateStatesQuery();
                var states = await templateService.GetTemplateStatesQuery.HandleAsync(query);

                LogEndOfRequest($"Success {states.Count} elements found", 200);
                return(Ok(states));
            }
            catch (KeyNotFoundException)
            {
                LogEndOfRequest("Failed state list is empty", 404);
                return(NotFound());
            }
        }