public async Task <IActionResult> GetContent(string id) { if (!string.IsNullOrWhiteSpace(id)) { var file = await _fileEngine.GetById(id); return(File(file.FileContent, file.ContentType)); } return(null); }
public EventType(IFileEngine fileEngine, IMissionEngine missionEngine, ISeriesEngine seriesEngine) { Name = "Event"; Description = "Major events that occurred during the mission"; Field(e => e.Id); Field(e => e.Text); Field(e => e.Timestamp); Field <FileType>("file", "Image associated with the series.", resolve: c => fileEngine.GetById(c.Source.FileId)); Field <MissionType>("mission", "Mission the event occurred on.", resolve: c => missionEngine.GetMission(c.Source.MissionId)); Field <SeriesType>("series", "Series of missions associated with the event.", resolve: c => seriesEngine.GetSeries(c.Source.SeriesId)); }
public MissionType(ISeriesEngine seriesEngine, IFileEngine fileEngine, ILogEngine logEngine) { Name = "Mission"; Description = "A set of missions that contributed to a larger objective"; // Auto-mapped properties Field(s => s.Id); Field(s => s.MissionName).Description("The name of the mission."); // Custom-mapped properties Field <ListGraphType <SpeakerType> >("speakers", "Speakers whose voice was recorded in logs during this mission.", resolve: c => c.Source.Speakers); Field <FileType>("file", "Image associated with the mission.", resolve: c => fileEngine.GetById(c.Source.FileId)); Field <SeriesType>("series", "The series this mission was a part of.", resolve: c => seriesEngine.GetSeries(c.Source.SeriesId)); Field <ListGraphType <LogType> >("log", "Logs that were captured as part of this mission.", resolve: c => logEngine.GetLogsByMissionId(c.Source.Id)); Field <LongGraphType>("logCount", "Number of logs that were captured as part of this mission.", resolve: c => logEngine.GetLogCountByMissionId(c.Source.Id)); }
public SeriesType(IMissionEngine missionEngine, IFileEngine fileEngine) { Name = "Series"; Description = "A set of missions that contributed to a larger objective"; // Auto-mapped properties Field(s => s.Id); Field(s => s.SeriesName).Description("The name of the series."); // Custom-mapped properties Field <FileType>("file", "Image associated with the series.", resolve: c => fileEngine.GetById(c.Source.FileId)); Field <ListGraphType <MissionType> >("missions", "Which missions are part of this series.", resolve: c => missionEngine.GetMissionsBySeriesId(c.Source.Id)); Field <LongGraphType>("missionCount", "Number of missions that are part of this series.", resolve: c => missionEngine.GetMissionCountBySeriesId(c.Source.Id)); }