public static async Task <Illustration> IllustrationInfo(string id) { SingleWorkResponse.Illust response; try { response = (await HttpClientFactory.AppApiService.GetSingle(id)).IllustInfo; } catch (ApiException e) { ExceptionDumper.WriteException(e); return(null); } catch (Exception) { return(null); } var illust = new Illustration { Bookmark = (int)response.TotalBookmarks, Id = response.Id.ToString(), IsLiked = response.IsBookmarked, IsManga = response.PageCount != 1, IsUgoira = response.Type == "ugoira", Origin = response.ImageUrls.Original ?? response.MetaSinglePage.OriginalImageUrl, Large = response.ImageUrls.Large, Tags = response.Tags.Select(t => new Tag { Name = t.Name, TranslatedName = t.TranslatedName }), Thumbnail = response.ImageUrls.Medium, Title = response.Title, UserName = response.User.Name, UserId = response.User.Id.ToString(), ViewCount = (int)response.TotalView, Comments = (int)response.TotalComments, Resolution = $"{response.Width}x{response.Height}", PublishDate = response.CreateDate, }; if (illust.IsManga && response.MetaPages != null) { illust.MangaMetadata = response.MetaPages.Select(p => { var page = (Illustration)illust.Clone(); page.Thumbnail = p.ImageUrls.Medium; page.Origin = p.ImageUrls.Original; page.Large = p.ImageUrls.Large; return(page); }).ToArray(); illust.PageCount = illust.MangaMetadata.Length; foreach (var illustration in illust.MangaMetadata) { illustration.MangaMetadata = illust.MangaMetadata; } } return(illust); }
/// <summary> /// Test methods exposed by the EntityHelper class. /// </summary> private void Step_20_TestEntityHelper_Generated() { using (TransactionManager tm = CreateTransaction()) { mock = CreateMockInstance(tm); Illustration entity = mock.Copy() as Illustration; entity = (Illustration)mock.Clone(); Assert.IsTrue(Illustration.ValueEquals(entity, mock), "Clone is not working"); } }
public static async Task <Illustration> IllustrationInfo(string id) { IllustResponse.Response response; try { response = (await HttpClientFactory.PublicApiService.GetSingle(id)).ToResponse[0]; } catch (Exception) { return(null); } var illust = new Illustration { Bookmark = (int)(response.Stats.FavoritedCount.Private + response.Stats.FavoritedCount.Public), Id = response.Id.ToString(), IsLiked = response.FavoriteId != 0, IsManga = response.IsManga, IsUgoira = response.Type == "ugoira", Origin = response.ImageUrls.Large, Tags = response.Tags.ToArray(), Thumbnail = response.ImageUrls.Px480Mw ?? response.ImageUrls.Medium, Title = response.Title, Type = Illustration.IllustType.Parse(response), UserName = response.User.Name, UserId = response.User.Id.ToString() }; if (illust.IsManga) { illust.MangaMetadata = response.Metadata.Pages.Select(p => { var page = (Illustration)illust.Clone(); page.IsManga = false; page.Origin = p.ImageUrls.Large; return(page); }).ToArray(); } return(illust); }