예제 #1
0
 public QueueDetailsModule(IBroadcastSignalRMessage broadcastSignalRMessage, IQueueService queueService, IPendingReleaseService pendingReleaseService)
     : base(broadcastSignalRMessage, "queue/details")
 {
     _queueService          = queueService;
     _pendingReleaseService = pendingReleaseService;
     GetResourceAll         = GetQueue;
 }
예제 #2
0
        public QueueStatusController(IBroadcastSignalRMessage broadcastSignalRMessage, IQueueService queueService, IPendingReleaseService pendingReleaseService)
            : base(broadcastSignalRMessage)
        {
            _queueService          = queueService;
            _pendingReleaseService = pendingReleaseService;

            _broadcastDebounce = new Debouncer(BroadcastChange, TimeSpan.FromSeconds(5));
        }
예제 #3
0
 public DelaySpecification(IPendingReleaseService pendingReleaseService,
                           IDelayProfileService delayProfileService,
                           Logger logger)
 {
     _pendingReleaseService = pendingReleaseService;
     _delayProfileService   = delayProfileService;
     _logger = logger;
 }
예제 #4
0
 public ProcessDownloadDecisions(IDownloadService downloadService,
                                 IPrioritizeDownloadDecision prioritizeDownloadDecision,
                                 IPendingReleaseService pendingReleaseService,
                                 Logger logger)
 {
     _downloadService = downloadService;
     _prioritizeDownloadDecision = prioritizeDownloadDecision;
     _pendingReleaseService = pendingReleaseService;
     _logger = logger;
 }
예제 #5
0
 public ProcessDownloadDecisions(IDownloadService downloadService,
                                 IPrioritizeDownloadDecision prioritizeDownloadDecision,
                                 IPendingReleaseService pendingReleaseService,
                                 Logger logger)
 {
     _downloadService            = downloadService;
     _prioritizeDownloadDecision = prioritizeDownloadDecision;
     _pendingReleaseService      = pendingReleaseService;
     _logger = logger;
 }
예제 #6
0
 public DelaySpecification(IPendingReleaseService pendingReleaseService,
                           IQualityUpgradableSpecification qualityUpgradableSpecification,
                           IDelayProfileService delayProfileService,
                           Logger logger)
 {
     _pendingReleaseService = pendingReleaseService;
     _qualityUpgradableSpecification = qualityUpgradableSpecification;
     _delayProfileService = delayProfileService;
     _logger = logger;
 }
예제 #7
0
        public QueueStatusModule(IBroadcastSignalRMessage broadcastSignalRMessage, IQueueService queueService, IPendingReleaseService pendingReleaseService)
            : base(broadcastSignalRMessage, "queue/status")
        {
            _queueService          = queueService;
            _pendingReleaseService = pendingReleaseService;

            _broadcastDebounce = new Debouncer(BroadcastChange, TimeSpan.FromSeconds(5));

            Get("/", x => GetQueueStatusResponse());
        }
예제 #8
0
 public DelaySpecification(IPendingReleaseService pendingReleaseService,
                           IQualityUpgradableSpecification qualityUpgradableSpecification,
                           IDelayProfileService delayProfileService,
                           Logger logger)
 {
     _pendingReleaseService          = pendingReleaseService;
     _qualityUpgradableSpecification = qualityUpgradableSpecification;
     _delayProfileService            = delayProfileService;
     _logger = logger;
 }
예제 #9
0
        public QueueModule(IBroadcastSignalRMessage broadcastSignalRMessage,
                           IQueueService queueService,
                           IPendingReleaseService pendingReleaseService,
                           QualityProfileService qualityProfileService)
            : base(broadcastSignalRMessage)
        {
            _queueService          = queueService;
            _pendingReleaseService = pendingReleaseService;
            GetResourcePaged       = GetQueue;

            _qualityComparer = new QualityModelComparer(qualityProfileService.GetDefaultProfile(string.Empty));
        }
예제 #10
0
 public DelaySpecification(IPendingReleaseService pendingReleaseService,
                           IUpgradableSpecification qualityUpgradableSpecification,
                           ICustomFormatCalculationService formatService,
                           IDelayProfileService delayProfileService,
                           Logger logger)
 {
     _pendingReleaseService          = pendingReleaseService;
     _qualityUpgradableSpecification = qualityUpgradableSpecification;
     _formatService       = formatService;
     _delayProfileService = delayProfileService;
     _logger = logger;
 }
예제 #11
0
 public DelaySpecification(IPendingReleaseService pendingReleaseService,
                           IUpgradableSpecification qualityUpgradableSpecification,
                           IDelayProfileService delayProfileService,
                           IMediaFileService mediaFileService,
                           IPreferredWordService preferredWordServiceCalculator,
                           Logger logger)
 {
     _pendingReleaseService          = pendingReleaseService;
     _upgradableSpecification        = qualityUpgradableSpecification;
     _delayProfileService            = delayProfileService;
     _mediaFileService               = mediaFileService;
     _preferredWordServiceCalculator = preferredWordServiceCalculator;
     _logger = logger;
 }
예제 #12
0
        public QueueModule(IBroadcastSignalRMessage broadcastSignalRMessage,
                           IQueueService queueService,
                           IPendingReleaseService pendingReleaseService,
                           ILanguageProfileService languageProfileService,
                           QualityProfileService qualityProfileService)
            : base(broadcastSignalRMessage)
        {
            _queueService          = queueService;
            _pendingReleaseService = pendingReleaseService;
            GetResourcePaged       = GetQueue;

            LANGUAGE_COMPARER = new LanguageComparer(languageProfileService.GetDefaultProfile(string.Empty));
            QUALITY_COMPARER  = new QualityModelComparer(qualityProfileService.GetDefaultProfile(string.Empty));
        }
예제 #13
0
 public RssSyncService(IFetchAndParseRss rssFetcherAndParser,
                       IMakeDownloadDecision downloadDecisionMaker,
                       IProcessDownloadDecisions processDownloadDecisions,
                       IEpisodeSearchService episodeSearchService,
                       IPendingReleaseService pendingReleaseService,
                       IEventAggregator eventAggregator,
                       Logger logger)
 {
     _rssFetcherAndParser      = rssFetcherAndParser;
     _downloadDecisionMaker    = downloadDecisionMaker;
     _processDownloadDecisions = processDownloadDecisions;
     _episodeSearchService     = episodeSearchService;
     _pendingReleaseService    = pendingReleaseService;
     _eventAggregator          = eventAggregator;
     _logger = logger;
 }
예제 #14
0
        public QueueActionModule(IQueueService queueService,
                                 ITrackedDownloadService trackedDownloadService,
                                 IFailedDownloadService failedDownloadService,
                                 IProvideDownloadClient downloadClientProvider,
                                 IPendingReleaseService pendingReleaseService,
                                 IDownloadService downloadService)
        {
            _queueService           = queueService;
            _trackedDownloadService = trackedDownloadService;
            _failedDownloadService  = failedDownloadService;
            _downloadClientProvider = downloadClientProvider;
            _pendingReleaseService  = pendingReleaseService;
            _downloadService        = downloadService;

            Delete(@"/(?<id>[\d]{1,10})", x => Remove((int)x.Id));
            Post("/import", x => Import());
            Post("/grab", x => Grab());
        }
예제 #15
0
 public RssSyncService(IIndexerStatusService indexerStatusService,
                       IIndexerFactory indexerFactory,
                       IFetchAndParseRss rssFetcherAndParser,
                       IMakeDownloadDecision downloadDecisionMaker,
                       IProcessDownloadDecisions processDownloadDecisions,
                       IPendingReleaseService pendingReleaseService,
                       IEventAggregator eventAggregator,
                       Logger logger)
 {
     _indexerStatusService     = indexerStatusService;
     _indexerFactory           = indexerFactory;
     _rssFetcherAndParser      = rssFetcherAndParser;
     _downloadDecisionMaker    = downloadDecisionMaker;
     _processDownloadDecisions = processDownloadDecisions;
     _pendingReleaseService    = pendingReleaseService;
     _eventAggregator          = eventAggregator;
     _logger = logger;
 }
예제 #16
0
        public QueueActionModule(IQueueService queueService,
                                 ITrackedDownloadService trackedDownloadService,
                                 ICompletedDownloadService completedDownloadService,
                                 IProvideDownloadClient downloadClientProvider,
                                 IPendingReleaseService pendingReleaseService,
                                 IDownloadService downloadService)
        {
            _queueService             = queueService;
            _trackedDownloadService   = trackedDownloadService;
            _completedDownloadService = completedDownloadService;
            _downloadClientProvider   = downloadClientProvider;
            _pendingReleaseService    = pendingReleaseService;
            _downloadService          = downloadService;

            Delete[@"/(?<id>[\d]{1,10})"] = x => Remove((int)x.Id);
            Post["/import"] = x => Import();
            Post["/grab"]   = x => Grab();
        }
예제 #17
0
        public QueueController(IBroadcastSignalRMessage broadcastSignalRMessage,
                               IQueueService queueService,
                               IPendingReleaseService pendingReleaseService,
                               QualityProfileService qualityProfileService,
                               ITrackedDownloadService trackedDownloadService,
                               IFailedDownloadService failedDownloadService,
                               IIgnoredDownloadService ignoredDownloadService,
                               IProvideDownloadClient downloadClientProvider)
            : base(broadcastSignalRMessage)
        {
            _queueService           = queueService;
            _pendingReleaseService  = pendingReleaseService;
            _trackedDownloadService = trackedDownloadService;
            _failedDownloadService  = failedDownloadService;
            _ignoredDownloadService = ignoredDownloadService;
            _downloadClientProvider = downloadClientProvider;

            _qualityComparer = new QualityModelComparer(qualityProfileService.GetDefaultProfile(string.Empty));
        }
예제 #18
0
        public QueueActionModule(IQueueService queueService,
                                 ITrackedDownloadService trackedDownloadService,
                                 IFailedDownloadService failedDownloadService,
                                 IProvideDownloadClient downloadClientProvider,
                                 IPendingReleaseService pendingReleaseService,
                                 IDownloadService downloadService)
        {
            _queueService           = queueService;
            _trackedDownloadService = trackedDownloadService;
            _failedDownloadService  = failedDownloadService;
            _downloadClientProvider = downloadClientProvider;
            _pendingReleaseService  = pendingReleaseService;
            _downloadService        = downloadService;

            Post[@"/grab/(?<id>[\d]{1,10})"] = x => Grab((int)x.Id);
            Post["/grab/bulk"] = x => Grab();

            Delete[@"/(?<id>[\d]{1,10})"] = x => Remove((int)x.Id);
            Delete["/bulk"] = x => Remove();
        }
예제 #19
0
 public PreDBService(
     IFetchAndParseRss rssFetcherAndParser,
     IMakeDownloadDecision downloadDecisionMaker,
     IProcessDownloadDecisions processDownloadDecisions,
     IPendingReleaseService pendingReleaseService,
     IEventAggregator eventAggregator,
     IMovieService movieService,
     IHttpClient httpClient,
     IParsingService parsingService,
     Logger logger)
 {
     _rssFetcherAndParser      = rssFetcherAndParser;
     _downloadDecisionMaker    = downloadDecisionMaker;
     _processDownloadDecisions = processDownloadDecisions;
     _pendingReleaseService    = pendingReleaseService;
     _eventAggregator          = eventAggregator;
     _movieService             = movieService;
     _httpClient     = httpClient;
     _parsingService = parsingService;
     _logger         = logger;
 }
예제 #20
0
        public QueueActionModule(IQueueService queueService,
                                 ITrackedDownloadService trackedDownloadService,
                                 IFailedDownloadService failedDownloadService,
                                 IIgnoredDownloadService ignoredDownloadService,
                                 IProvideDownloadClient downloadClientProvider,
                                 IPendingReleaseService pendingReleaseService,
                                 IDownloadService downloadService,
                                 IBlocklistService blocklistService)
        {
            _queueService           = queueService;
            _trackedDownloadService = trackedDownloadService;
            _failedDownloadService  = failedDownloadService;
            _ignoredDownloadService = ignoredDownloadService;
            _downloadClientProvider = downloadClientProvider;
            _pendingReleaseService  = pendingReleaseService;
            _downloadService        = downloadService;
            _blocklistService       = blocklistService;

            Post(@"/grab/(?<id>[\d]{1,10})", x => Grab((int)x.Id));
            Post("/grab/bulk", x => Grab());

            Delete(@"/(?<id>[\d]{1,10})", x => Remove((int)x.Id));
            Delete("/bulk", x => Remove());
        }
예제 #21
0
 public QueueActionController(IPendingReleaseService pendingReleaseService,
                              IDownloadService downloadService)
 {
     _pendingReleaseService = pendingReleaseService;
     _downloadService       = downloadService;
 }
예제 #22
0
 public QueueDetailsController(IBroadcastSignalRMessage broadcastSignalRMessage, IQueueService queueService, IPendingReleaseService pendingReleaseService)
     : base(broadcastSignalRMessage)
 {
     _queueService          = queueService;
     _pendingReleaseService = pendingReleaseService;
 }