internal static DM.Magazine Build(SM.Magazine magazine) { if (magazine != null) { List <DM.Creator> creators = new List <DM.Creator>(); creators.AddRange(magazine.Authors != null ? magazine.Authors.Select(x => Build(x, DE.CreatorType.Author)).ToList() : new List <DM.Creator>()); creators.AddRange(magazine.Translators != null ? magazine.Translators.Select(x => Build(x, DE.CreatorType.Translator)).ToList() : new List <DM.Creator>()); creators.AddRange(magazine.ReviewedAuthors != null ? magazine.ReviewedAuthors.Select(x => Build(x, DE.CreatorType.ReviewedAuthor)).ToList() : new List <DM.Creator>()); return(new DM.Magazine() { TitleFull = magazine.TitleFull, TitleShort = magazine.TitleShort, Creators = creators, AccessedDate = Build(magazine.AccessedDate), IssuedDate = Build(magazine.IssuedDate), Abstract = magazine.Abstract, Language = magazine.Language, Note = magazine.Note, URL = magazine.URL, ISSN = magazine.ISSN, CallNumber = magazine.CallNumber, ArchiveName = magazine.ArchiveName, ArchiveLocation = magazine.ArchiveLocation, ContainerTitleFull = magazine.ContainerTitleFull, PageNumber = magazine.PageNumber, Source = magazine.Source, Volume = magazine.Volume, Issue = magazine.Issue }); } else { return(null); } }
public SM.Citation Magazine(SE.Style style, SE.Format format, [FromBody] SM.Magazine magazine) { return(_citationManager.CreateCitationMagazine(style, format, magazine)); }
internal SM.Citation CreateCitationMagazine(SE.Style style, SE.Format format, SM.Magazine magazine) { return(ContentItemFactory.Build(_citationProcessor.CreateCitationMagazine(ContentItemFactory.Build(style), ContentItemFactory.Build(format), ContentItemFactory.Build(magazine)))); }