using System; using System.Collections.Generic; using System.Linq; using AutoMapper; using Nancy; using NzbDrone.Api.Extensions; using NzbDrone.Core.Tv; namespace NzbDrone.Api.Missing { public class MissingModule : NzbDroneApiModule { private readonly IEpisodeService _episodeService; public MissingModule(IEpisodeService episodeService) : base("/missing") { _episodeService = episodeService; Get["/"] = x => GetMissingEpisodes(); } private Response GetMissingEpisodes() { bool includeSpecials; Boolean.TryParse(PrimitiveExtensions.ToNullSafeString(Request.Query.IncludeSpecials), out includeSpecials); var episodes = _episodeService.EpisodesWithoutFiles(includeSpecials); return Mapper.Map, List>(episodes).AsResponse(); } } }