/// <summary>
        /// Get account balance for Product
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <ClientResponse <AccountBalanceResponse> > AccountBalance(AccountBalanceRequest request)
        {
            if (string.IsNullOrEmpty(request.Token))
            {
                return(new ClientResponse <AccountBalanceResponse> {
                    Status = Status.Failed.ToString(), StatusCode = HttpStatusCode.Unauthorized
                });
            }

            var headers = new List <KeyValuePair <string, string> >
            {
                new KeyValuePair <string, string>(Constants.SubKeyHeader, request.SubscriptionKey),
                new KeyValuePair <string, string>(Constants.AuthHeader, $"Bearer {request.Token}"),
            };

            var response = await baseClient.GetAsync <AccountBalanceResponse>(request.RequestUri, Constants.MtnClient, headers);

            response.Status = response.StatusCode == HttpStatusCode.OK ? Status.Successful.ToString() : Status.Failed.ToString();

            return(response);
        }
        /// <summary>
        /// Get a transfer
        /// </summary>
        /// <param name="referenceId"></param>
        /// <param name="config"></param>
        /// <returns></returns>
        public async Task <ClientResponse <TransferResponse> > GetTransfer(string referenceId, TransferConfig config)
        {
            if (string.IsNullOrEmpty(config.Token))
            {
                return(new ClientResponse <TransferResponse> {
                    Status = Status.Failed.ToString(), StatusCode = HttpStatusCode.Unauthorized
                });
            }

            var headers = new List <KeyValuePair <string, string> >
            {
                new KeyValuePair <string, string>(Constants.SubKeyHeader, config.SubscriptionKey),
                new KeyValuePair <string, string>(Constants.AuthHeader, $"Bearer {config.Token}"),
            };

            var response = await baseClient.GetAsync <TransferResponse>($"{config.RequestUri}/{referenceId}", Constants.MtnClient, headers);

            response.Status = response.StatusCode == HttpStatusCode.OK ? Status.Successful.ToString() : Status.Failed.ToString();

            return(response);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Get status for reqyes to pay
        /// </summary>
        /// <param name="referenceId"></param>
        /// <returns></returns>
        public async Task <ClientResponse <GetReqesutToPayReponse> > GetRequestToPay(string referenceId)
        {
            var token = await GetToken();

            if (string.IsNullOrEmpty(token?.AccessToken))
            {
                return(new ClientResponse <GetReqesutToPayReponse> {
                    Status = Status.Failed.ToString(), StatusCode = HttpStatusCode.Unauthorized
                });
            }

            var headers = new List <KeyValuePair <string, string> >
            {
                new KeyValuePair <string, string>(Constants.SubKeyHeader, collectionConfig.SubscriptionKey),
                new KeyValuePair <string, string>(Constants.AuthHeader, $"Bearer {token.AccessToken}"),
            };

            var response = await baseClient.GetAsync <GetReqesutToPayReponse>($"{CollectionRequestUri.RequestToPay}/{referenceId}", Constants.MtnClient, headers);

            response.Status = response.StatusCode == HttpStatusCode.OK ? Status.Successful.ToString() : Status.Failed.ToString();

            return(response);
        }
        public async Task <ItemResponse> Get(Guid id, CancellationToken cancellationToken)
        {
            var uri = BuildUri(id);

            return(await _client.GetAsync <ItemResponse>(uri, cancellationToken));
        }
        public async Task <IEnumerable <ItemResponseModel> > GetItems(Guid basketId)
        {
            var uri = BuildUri(basketId, "item");

            return(await _client.GetAsync <IEnumerable <ItemResponseModel> >(uri));
        }
Exemplo n.º 6
0
        public async Task <IEnumerable <WeatherForecast> > GetAll(CancellationToken cancellationToken = default)
        {
            var uri = BuildUri();

            return(await _client.GetAsync <IEnumerable <WeatherForecast> >(uri, cancellationToken));
        }
        public async Task <BasketResponseModel> Get(Guid id)
        {
            var uri = BuildUri(id);

            return(await _client.GetAsync <BasketResponseModel>(uri));
        }