internal static DM.Report Build(SM.Report report) { if (report != null) { List <DM.Creator> creators = new List <DM.Creator>(); creators.AddRange(report.Authors != null ? report.Authors.Select(x => Build(x, DE.CreatorType.Author)).ToList() : new List <DM.Creator>()); creators.AddRange(report.Translators != null ? report.Translators.Select(x => Build(x, DE.CreatorType.Translator)).ToList() : new List <DM.Creator>()); creators.AddRange(report.CollectionEditors != null ? report.CollectionEditors.Select(x => Build(x, DE.CreatorType.CollectionEditor)).ToList() : new List <DM.Creator>()); return(new DM.Report() { TitleFull = report.TitleFull, TitleShort = report.TitleShort, Creators = creators, AccessedDate = Build(report.AccessedDate), IssuedDate = Build(report.IssuedDate), Abstract = report.Abstract, Language = report.Language, Note = report.Note, URL = report.URL, PublisherName = report.PublisherName, PublisherLocation = report.PublisherLocation, CallNumber = report.CallNumber, ArchiveName = report.ArchiveName, ArchiveLocation = report.ArchiveLocation, CollectionTitle = report.CollectionTitle, PageNumber = report.PageNumber, Source = report.Source, EventPlace = report.EventPlace, Number = report.Number, Genre = report.Genre }); } else { return(null); } }
public SM.Citation Report(SE.Style style, SE.Format format, [FromBody] SM.Report report) { return(_citationManager.CreateCitationReport(style, format, report)); }
internal SM.Citation CreateCitationReport(SE.Style style, SE.Format format, SM.Report report) { return(ContentItemFactory.Build(_citationProcessor.CreateCitationReport(ContentItemFactory.Build(style), ContentItemFactory.Build(format), ContentItemFactory.Build(report)))); }