Пример #1
0
        public async Task <Tuple <ResponseMessageDto, MessageQueue> > ExecuteActionTemplate(Func <MessageQueue, Task <Tuple <ResponseMessageDto, MessageQueue> > > action,
                                                                                            MessageQueue messageQueue)
        {
            if (messageQueue == null)
            {
                throw new ArgumentNullException(nameof(messageQueue));
            }

            var responseMessageDto = new ResponseMessageDto {
                Success = true, Errors = new List <string>()
            };
            var response = new Tuple <ResponseMessageDto, MessageQueue>(responseMessageDto, messageQueue);

            try
            {
                if (action == null)
                {
                    throw new ArgumentNullException(nameof(action));
                }
                response = await action(messageQueue);
            }
            catch (Exception ex)
            {
                response.Item1.Success = false;
                response.Item1.Errors  = new List <string> {
                    ex.Message
                };
                // TODO: log exception
            }

            return(response);
        }
        public async Task <IActionResult> ListStore()
        {
            ResponseMessageDto <List <ScheduleDto> > output = await _getStoreUseCase.Execute();

            _storePresenter.PopulateFirst(output);
            return(_storePresenter.ContentResult);
        }
Пример #3
0
        public void PopulateFirst(ResponseMessageDto <List <ScheduleDto> > dto)
        {
            if (dto == null)
            {
                ContentResult.StatusCode = (int)(HttpStatusCode.NoContent);
                return;
            }

            ContentResult.StatusCode = (int)(HttpStatusCode.OK);
            ContentResult.Content    = JsonSerializer.SerializeObject(dto);
        }
        public static async Task <ResponseMessageDto> GetRatesAsync()
        {
            Uri ratesUrl = ApiUrlConstructors.GetRatesUrl();

            ResponseMessageDto getRatesResponse = await RequestDataAsync(ratesUrl);

            if (getRatesResponse?.Rates == null)
            {
                throw new HttpRequestException("The rates data cannot be found. Please check the API url and key for its validity.");
            }

            return(getRatesResponse);
        }
        public static async Task <ResponseMessageDto> GetSymbolsAsync()
        {
            Uri symbolsUrl = ApiUrlConstructors.GetSymbolsUrl();

            ResponseMessageDto checkKeyUrlRequest = await RequestDataAsync(symbolsUrl);

            if (checkKeyUrlRequest == null || !checkKeyUrlRequest.Success)
            {
                throw new HttpRequestException("The symbols data cannot be found. Please check the API url and key for its validity.");
            }

            return(checkKeyUrlRequest);
        }
        public async Task <ResponseMessageDto> GetRatesAsync()
        {
            Uri ratesUrl = _apiUrlConstructors.GetRatesUrl();

            ResponseMessageDto getRatesResponse = await RequestDataAsync(ratesUrl);

            if (getRatesResponse?.Rates == null)
            {
                throw new HttpRequestException("The request to get the currency rates failed.");
            }

            return(getRatesResponse);
        }
        public async Task <ResponseMessageDto> GetSymbolsAsync()
        {
            Uri symbolsUrl = _apiUrlConstructors.GetSymbolsUrl();

            ResponseMessageDto symbolsResponseData = await RequestDataAsync(symbolsUrl);

            if (symbolsResponseData == null || !symbolsResponseData.Success)
            {
                throw new HttpRequestException("The request to get the currenc symbols list failed.");
            }

            return(symbolsResponseData);
        }
        public async Task <ResponseMessageDto <List <ScheduleDto> > > Execute()
        {
            var result = new ResponseMessageDto <List <ScheduleDto> >();

            try
            {
                List <Schedules> store = _storeRepository.FindStoreAll();

                if (store.Count > 0)
                {
                    result.Data    = new List <ScheduleDto>();
                    result.Message = "Consulta Ok";
                    result.Success = true;

                    store.ForEach(q =>
                    {
                        result.Data.Add(new ScheduleDto
                        {
                            Id   = q.Id,
                            Name = q.Name
                        });
                    });
                }
                else
                {
                    return(result = new ResponseMessageDto <List <ScheduleDto> >
                    {
                        Message = "Não foi localizado nenhuma loja",
                        Success = false,
                        Data = null
                    });
                }
                return(result);
            }
            catch (Exception ex)
            {
                //RegisterLog.Log("GetStoreUseCase", ex.TargetSite.DeclaringType.Namespace);
                return(result = new ResponseMessageDto <List <ScheduleDto> >
                {
                    Message = "Erro de Processamento para retornar store",
                    Success = false,
                    Data = null
                });
            }
        }
Пример #9
0
        public async Task <ResponseMessageDto> DeleteMessageAsync(Guid boardId, Guid topicId, ResponseMessageDto message)
        {
            var existingTopic = await _messageRepository.GetMessageAsync(message.Id);

            var returnedEntity = await _messageRepository.DeleteMessageAsync(existingTopic);

            var responseDto = _mapper.Map <Message, ResponseMessageDto>(returnedEntity);

            return(responseDto);
        }