/// <summary> /// Gets total number of images in a presentation from a 3rd party storage /// </summary> /// <param name="storageType"></param> /// <param name="storageName">Name of the storage</param> /// <param name="folderName">In case of Amazon S3 storage the folder's path starts with Amazon S3 Bucket name.</param> /// <returns>Total number of images</returns> public int GetImageCount(StorageType storageType, string storageName, string folderName) { //build URI to get image count StringBuilder strURI = new StringBuilder(Product.BaseProductUri + "/slides/" + FileName + "/images" + (string.IsNullOrEmpty(folderName) ? "" : "?folder=" + folderName)); switch (storageType) { case StorageType.AmazonS3: strURI.Append("&storage=" + storageName); break; } string signedURI = Utils.Sign(strURI.ToString()); Stream responseStream = Utils.ProcessCommand(signedURI, "GET"); StreamReader reader = new StreamReader(responseStream); string strJSON = reader.ReadToEnd(); //Parse the json string to JObject JObject parsedJSON = JObject.Parse(strJSON); //Deserializes the JSON to a object. ImagesResponse imagesResponse = JsonConvert.DeserializeObject <ImagesResponse>(parsedJSON.ToString()); return(imagesResponse.Images.List.Count); }
/// <summary> /// Gets number of images in the specified slide /// </summary> /// <param name="slideNumber"></param> /// <returns></returns> public int GetImageCount(int slideNumber) { //build URI to get image count string strURI = Product.BaseProductUri + "/slides/" + FileName + "/slides/" + slideNumber.ToString() + "/images"; string signedURI = Utils.Sign(strURI); Stream responseStream = Utils.ProcessCommand(signedURI, "GET"); StreamReader reader = new StreamReader(responseStream); string strJSON = reader.ReadToEnd(); //Parse the json string to JObject JObject parsedJSON = JObject.Parse(strJSON); //Deserializes the JSON to a object. ImagesResponse imagesResponse = JsonConvert.DeserializeObject <ImagesResponse>(parsedJSON.ToString()); return(imagesResponse.Images.List.Count); }