/// <summary> /// /// </summary> /// <returns></returns> public static async Task <Pricing> GetAsync() { Pricing pricings = new Pricing(); string responseContent = await ApiCore.SendRequest("/pricing"); Objects.Pricing.Get.Response response = JsonConvert.DeserializeObject <Objects.Pricing.Get.Response>(responseContent); pricings = GetPricingsFromResponseData(response); return(pricings); }
/// <summary> /// /// </summary> /// <param name="responseData"></param> /// <returns></returns> private static Pricing GetPricingsFromResponseData(Objects.Pricing.Get.Response responseData) { Pricing pricings = new Pricing(); pricings.Currency = responseData.pricing.currency; pricings.VatRate = responseData.pricing.vat_rate; pricings.Image = new ImagePricing() { PricePerGbMonth = new PricingValue() { Net = responseData.pricing.image.price_per_gb_month.net, Gross = responseData.pricing.image.price_per_gb_month.gross } }; pricings.FloatingIp = new FloatingIpPricing() { PriceMontly = new PricingValue() { Net = responseData.pricing.floating_ip.price_monthly.net, Gross = responseData.pricing.floating_ip.price_monthly.gross } }; pricings.Traffic = new TrafficPricing() { PricePerTb = new PricingValue() { Net = responseData.pricing.traffic.price_per_tb.net, Gross = responseData.pricing.traffic.price_per_tb.gross } }; pricings.ServerBackup = new ServerBackupPricing() { Percentage = responseData.pricing.server_backup.percentage }; pricings.ServerTypes = new List <ServerTypePricing>(); foreach (var serverType in responseData.pricing.server_types) { ServerTypePricing stp = ServerType.GetServerTypePricingFromResponseData(serverType); pricings.ServerTypes.Add(stp); } return(pricings); }