Example #1
0
        public async Task <ProductList> GetProductsAsync()
        {
            webAPI = null;

            webAPI = RestService.For <IProductsWebAPI>(
                HttpClientFactory.Create(productsBaseUrl), productRefitSettings
                );

            var allProducts = await webAPI.GetProductsAsync();

            return(allProducts);
        }
        public async Task <ProductsPerTypeDTO> GetProductsAsync()
        {
            if (!connectivityService.IsThereInternet && Barrel.Current.Exists(allProductsKey))
            {
                return(Barrel.Current.Get <ProductsPerTypeDTO>(allProductsKey));
            }

            if (!Barrel.Current.IsExpired(allProductsKey) && Barrel.Current.Exists(allProductsKey))
            {
                return(Barrel.Current.Get <ProductsPerTypeDTO>(allProductsKey));
            }

            var allProducts = await webAPI.GetProductsAsync();

            Barrel.Current.Add(allProductsKey, allProducts, TimeSpan.FromMinutes(60));

            return(allProducts);
        }