/// <summary> /// Gets a media from the specified <var>JsonObject</var>. /// </summary> /// <param name="obj">The instance of <var>JsonObject</var> to parse.</param> public static InstagramMedia Parse(JsonObject obj) { if (obj == null) { return(null); } JsonObject comments = obj.GetObject("comments"); JsonObject likes = obj.GetObject("likes"); string type = obj.GetString("type"); InstagramMedia media = null; if (type == "image") { media = new InstagramImage(obj); } else if (type == "video") { media = new InstagramVideo(obj) { Videos = obj.GetObject("videos", InstagramVideoSummary.Parse) }; } if (media != null) { media.Id = obj.GetString("id"); media.Type = type; media.Tags = obj.GetArray("tags").Cast <string>(); media.Created = SocialUtils.GetDateTimeFromUnixTime(obj.GetInt64("created_time")); media.Link = obj.GetString("link"); media.Filter = obj.GetString("filter"); media.CommentCount = comments.GetInt32("count"); media.Comments = comments.GetArray("data", InstagramComment.Parse); media.LikeCount = likes.GetInt32("count"); media.Likes = likes.GetArray("data", InstagramUserSummary.Parse); media.Images = obj.GetObject("images", InstagramImageSummary.Parse); media.Caption = obj.GetObject("caption", InstagramComment.Parse); media.User = obj.GetObject("user", InstagramUser.Parse); media.Location = obj.GetObject("location", InstagramLocation.Parse); media.UsersInPhoto = obj.GetArray("users_in_photo", InstagramTaggedUser.Parse); } return(media); }
/// <summary> /// Gets a media from the specified <var>JsonObject</var>. /// </summary> /// <param name="obj">The instance of <var>JsonObject</var> to parse.</param> public static InstagramMedia Parse(JsonObject obj) { if (obj == null) return null; JsonObject comments = obj.GetObject("comments"); JsonObject likes = obj.GetObject("likes"); string type = obj.GetString("type"); InstagramMedia media = null; if (type == "image") { media = new InstagramImage(); } else if (type == "video") { media = new InstagramVideo { Videos = obj.GetObject("videos", InstagramVideoSummary.Parse) }; } if (media != null) { media.JsonObject = obj; media.Id = obj.GetString("id"); media.Type = type; media.Tags = obj.GetArray("tags").Cast<string>(); media.Created = SocialUtils.GetDateTimeFromUnixTime(obj.GetLong("created_time")); media.Link = obj.GetString("link"); media.Filter = obj.GetString("filter"); media.CommentCount = comments.GetInt("count"); media.Comments = comments.GetArray("data", InstagramComment.Parse); media.LikeCount = likes.GetInt("count"); media.Images = obj.GetObject("images", InstagramImageSummary.Parse); media.Caption = obj.GetObject("caption", InstagramComment.Parse); media.User = obj.GetObject("user", InstagramUser.Parse); media.Location = obj.GetObject("location", InstagramLocation.Parse); } return media; }