public IServiceResult <IProduct> GetProduct(string productName) { HttpCaller caller = new HttpCaller(); Task <HttpResponseMessage> mess = caller.GetResponse(_configurationRepository.GetUrl("ProductEndpoint")); HttpResponseMessage message = mess.Result; IProduct product = JsonConvert.DeserializeObject <Product>(message.Content.ReadAsStringAsync().Result); IServiceResult <IProduct> result = new GenericServiceResult <IProduct>(product, message.IsSuccessStatusCode, message.StatusCode.ToString()); return(result); }
public IServiceResult <IEnumerable <IProduct> > PlaceOrder(IEnumerable <IProduct> products) { HttpCaller caller = new HttpCaller(); Task <HttpResponseMessage> mess = caller.GetResponse(_configurationRepository.GetUrl("OrderEndpoint")); HttpResponseMessage message = mess.Result; if (message.IsSuccessStatusCode) { return(new GenericServiceResult <IEnumerable <IProduct> >(products, true, "All good.")); } return(new GenericServiceResult <IEnumerable <IProduct> >(null, false, "Error.")); }
public IServiceResult <ICustomerEntity> GetCustomer(string customerName) { HttpCaller caller = new HttpCaller(); Task <HttpResponseMessage> mess = caller.GetResponse(_configurationRepository.GetUrl("CustomerEndpoint") + customerName); mess.Start(); HttpResponseMessage message = mess.Result; Customer customer = JsonConvert.DeserializeObject <Customer>(message.Content.ReadAsStringAsync().Result); IServiceResult <ICustomerEntity> result = new GenericServiceResult <ICustomerEntity>(customer, message.IsSuccessStatusCode, message.StatusCode.ToString()); return(result); }