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