示例#1
0
        public SeriesModule(IBroadcastSignalRMessage signalRBroadcaster,
                            ISeriesService seriesService,
                            IAddSeriesService addSeriesService,
                            ISeriesStatisticsService seriesStatisticsService,
                            ISceneMappingService sceneMappingService,
                            IMapCoversToLocal coverMapper,
                            IManageCommandQueue commandQueueManager,
                            IRootFolderService rootFolderService,
                            RootFolderValidator rootFolderValidator,
                            MappedNetworkDriveValidator mappedNetworkDriveValidator,
                            SeriesPathValidator seriesPathValidator,
                            SeriesExistsValidator seriesExistsValidator,
                            SeriesAncestorValidator seriesAncestorValidator,
                            SystemFolderValidator systemFolderValidator,
                            ProfileExistsValidator profileExistsValidator,
                            LanguageProfileExistsValidator languageProfileExistsValidator,
                            SeriesFolderAsRootFolderValidator seriesFolderAsRootFolderValidator
                            )
            : base(signalRBroadcaster)
        {
            _seriesService           = seriesService;
            _addSeriesService        = addSeriesService;
            _seriesStatisticsService = seriesStatisticsService;
            _sceneMappingService     = sceneMappingService;

            _coverMapper         = coverMapper;
            _commandQueueManager = commandQueueManager;
            _rootFolderService   = rootFolderService;

            GetResourceAll  = AllSeries;
            GetResourceById = GetSeries;
            CreateResource  = AddSeries;
            UpdateResource  = UpdateSeries;
            DeleteResource  = DeleteSeries;

            Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.QualityProfileId));

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(mappedNetworkDriveValidator)
            .SetValidator(seriesPathValidator)
            .SetValidator(seriesAncestorValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.QualityProfileId).SetValidator(profileExistsValidator);
            SharedValidator.RuleFor(s => s.LanguageProfileId).SetValidator(languageProfileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath)
            .IsValidPath()
            .SetValidator(seriesFolderAsRootFolderValidator)
            .When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.Title).NotEmpty();
            PostValidator.RuleFor(s => s.TvdbId).GreaterThan(0).SetValidator(seriesExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#2
0
 public CalendarModule(IBroadcastSignalRMessage signalR,
                       IMovieService moviesService,
                       IMapCoversToLocal coverMapper)
     : base(signalR, moviesService, coverMapper, "calendar")
 {
     GetResourceAll = GetCalendar;
 }
示例#3
0
 public RefreshBookService(IBookService bookService,
                           IAuthorService authorService,
                           IAddAuthorService addAuthorService,
                           IEditionService editionService,
                           IAuthorMetadataService authorMetadataService,
                           IProvideAuthorInfo authorInfo,
                           IProvideBookInfo bookInfo,
                           IRefreshEditionService refreshEditionService,
                           IMediaFileService mediaFileService,
                           IHistoryService historyService,
                           IEventAggregator eventAggregator,
                           ICheckIfBookShouldBeRefreshed checkIfBookShouldBeRefreshed,
                           IMapCoversToLocal mediaCoverService,
                           Logger logger)
     : base(logger, authorMetadataService)
 {
     _bookService                  = bookService;
     _authorService                = authorService;
     _addAuthorService             = addAuthorService;
     _editionService               = editionService;
     _authorInfo                   = authorInfo;
     _bookInfo                     = bookInfo;
     _refreshEditionService        = refreshEditionService;
     _mediaFileService             = mediaFileService;
     _historyService               = historyService;
     _eventAggregator              = eventAggregator;
     _checkIfBookShouldBeRefreshed = checkIfBookShouldBeRefreshed;
     _mediaCoverService            = mediaCoverService;
     _logger = logger;
 }
示例#4
0
 public SeriesLookupModule(ISearchForNewSeries searchProxy, IBuildFileNames fileNameBuilder, IMapCoversToLocal coverMapper)
     : base("/series/lookup")
 {
     _searchProxy     = searchProxy;
     _fileNameBuilder = fileNameBuilder;
     _coverMapper     = coverMapper;
     Get("/", x => Search());
 }
示例#5
0
 public XbmcMetadata(IDetectXbmcNfo detectNfo,
                     IMapCoversToLocal mediaCoverService,
                     Logger logger)
 {
     _logger            = logger;
     _mediaCoverService = mediaCoverService;
     _detectNfo         = detectNfo;
 }
示例#6
0
 public RoksboxMetadata(IMapCoversToLocal mediaCoverService,
                        IDiskProvider diskProvider,
                        Logger logger)
 {
     _mediaCoverService = mediaCoverService;
     _diskProvider      = diskProvider;
     _logger            = logger;
 }
示例#7
0
        public MovieModule(IBroadcastSignalRMessage signalRBroadcaster,
                           IMovieService moviesService,
                           IMovieTranslationService movieTranslationService,
                           IAddMovieService addMovieService,
                           IMapCoversToLocal coverMapper,
                           IManageCommandQueue commandQueueManager,
                           IUpgradableSpecification qualityUpgradableSpecification,
                           IConfigService configService,
                           RootFolderValidator rootFolderValidator,
                           MappedNetworkDriveValidator mappedNetworkDriveValidator,
                           MoviePathValidator moviesPathValidator,
                           MovieExistsValidator moviesExistsValidator,
                           MovieAncestorValidator moviesAncestorValidator,
                           RecycleBinValidator recycleBinValidator,
                           SystemFolderValidator systemFolderValidator,
                           ProfileExistsValidator profileExistsValidator,
                           MovieFolderAsRootFolderValidator movieFolderAsRootFolderValidator)
            : base(signalRBroadcaster)
        {
            _moviesService                  = moviesService;
            _movieTranslationService        = movieTranslationService;
            _addMovieService                = addMovieService;
            _qualityUpgradableSpecification = qualityUpgradableSpecification;
            _configService                  = configService;
            _coverMapper         = coverMapper;
            _commandQueueManager = commandQueueManager;

            GetResourceAll  = AllMovie;
            GetResourceById = GetMovie;
            CreateResource  = AddMovie;
            UpdateResource  = UpdateMovie;
            DeleteResource  = DeleteMovie;

            SharedValidator.RuleFor(s => s.QualityProfileId).ValidId();

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(mappedNetworkDriveValidator)
            .SetValidator(moviesPathValidator)
            .SetValidator(moviesAncestorValidator)
            .SetValidator(recycleBinValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.QualityProfileId).SetValidator(profileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath)
            .IsValidPath()
            .SetValidator(movieFolderAsRootFolderValidator)
            .When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.Title).NotEmpty().When(s => s.TmdbId <= 0);
            PostValidator.RuleFor(s => s.TmdbId).NotNull().NotEmpty().SetValidator(moviesExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#8
0
 public MissingController(IBookService bookService,
                          ISeriesBookLinkService seriesBookLinkService,
                          IAuthorStatisticsService authorStatisticsService,
                          IMapCoversToLocal coverMapper,
                          IUpgradableSpecification upgradableSpecification,
                          IBroadcastSignalRMessage signalRBroadcaster)
     : base(bookService, seriesBookLinkService, authorStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster)
 {
 }
示例#9
0
 public MissingModule(IAlbumService albumService,
                      IArtistStatisticsService artistStatisticsService,
                      IMapCoversToLocal coverMapper,
                      IUpgradableSpecification upgradableSpecification,
                      IBroadcastSignalRMessage signalRBroadcaster)
     : base(albumService, artistStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "wanted/missing")
 {
     GetResourcePaged = GetMissingAlbums;
 }
示例#10
0
 public MissingModule(IBookService bookService,
                      IAuthorStatisticsService authorStatisticsService,
                      IMapCoversToLocal coverMapper,
                      IUpgradableSpecification upgradableSpecification,
                      IBroadcastSignalRMessage signalRBroadcaster)
     : base(bookService, authorStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "wanted/missing")
 {
     GetResourcePaged = GetMissingBooks;
 }
示例#11
0
        public ArtistModule(IBroadcastSignalRMessage signalRBroadcaster,
                            IArtistService artistService,
                            IAlbumService albumService,
                            IAddArtistService addArtistService,
                            IArtistStatisticsService artistStatisticsService,
                            IMapCoversToLocal coverMapper,
                            IManageCommandQueue commandQueueManager,
                            IRootFolderService rootFolderService,
                            RootFolderValidator rootFolderValidator,
                            MappedNetworkDriveValidator mappedNetworkDriveValidator,
                            ArtistPathValidator artistPathValidator,
                            ArtistExistsValidator artistExistsValidator,
                            ArtistAncestorValidator artistAncestorValidator,
                            SystemFolderValidator systemFolderValidator,
                            ProfileExistsValidator profileExistsValidator,
                            MetadataProfileExistsValidator metadataProfileExistsValidator
                            )
            : base(signalRBroadcaster)
        {
            _artistService           = artistService;
            _albumService            = albumService;
            _addArtistService        = addArtistService;
            _artistStatisticsService = artistStatisticsService;

            _coverMapper         = coverMapper;
            _commandQueueManager = commandQueueManager;
            _rootFolderService   = rootFolderService;

            GetResourceAll  = AllArtists;
            GetResourceById = GetArtist;
            CreateResource  = AddArtist;
            UpdateResource  = UpdateArtist;
            DeleteResource  = DeleteArtist;

            Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.QualityProfileId));
            Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.MetadataProfileId));

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(mappedNetworkDriveValidator)
            .SetValidator(artistPathValidator)
            .SetValidator(artistAncestorValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.QualityProfileId).SetValidator(profileExistsValidator);
            SharedValidator.RuleFor(s => s.MetadataProfileId).SetValidator(metadataProfileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath).IsValidPath().When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.ArtistName).NotEmpty();
            PostValidator.RuleFor(s => s.ForeignArtistId).NotEmpty().SetValidator(artistExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#12
0
 public CalendarModule(IAlbumService albumService,
                       IArtistStatisticsService artistStatisticsService,
                       IMapCoversToLocal coverMapper,
                       IUpgradableSpecification upgradableSpecification,
                       IBroadcastSignalRMessage signalRBroadcaster)
     : base(albumService, artistStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "calendar")
 {
     GetResourceAll = GetCalendar;
 }
示例#13
0
 public CalendarModule(IBookService bookService,
                       ISeriesBookLinkService seriesBookLinkService,
                       IAuthorStatisticsService authorStatisticsService,
                       IMapCoversToLocal coverMapper,
                       IUpgradableSpecification upgradableSpecification,
                       IBroadcastSignalRMessage signalRBroadcaster)
     : base(bookService, seriesBookLinkService, authorStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "calendar")
 {
     GetResourceAll = GetCalendar;
 }
示例#14
0
        public SeriesModule(IBroadcastSignalRMessage signalRBroadcaster,
                            ISeriesService seriesService,
                            IAddSeriesService addSeriesService,
                            ISeriesStatisticsService seriesStatisticsService,
                            ISceneMappingService sceneMappingService,
                            IMapCoversToLocal coverMapper,
                            ILanguageProfileService languageProfileService,
                            RootFolderValidator rootFolderValidator,
                            SeriesPathValidator seriesPathValidator,
                            SeriesExistsValidator seriesExistsValidator,
                            SeriesAncestorValidator seriesAncestorValidator,
                            SystemFolderValidator systemFolderValidator,
                            ProfileExistsValidator profileExistsValidator,
                            LanguageProfileExistsValidator languageProfileExistsValidator
                            )
            : base(signalRBroadcaster)
        {
            _seriesService           = seriesService;
            _addSeriesService        = addSeriesService;
            _seriesStatisticsService = seriesStatisticsService;
            _sceneMappingService     = sceneMappingService;

            _coverMapper            = coverMapper;
            _languageProfileService = languageProfileService;

            GetResourceAll  = AllSeries;
            GetResourceById = GetSeries;
            CreateResource  = AddSeries;
            UpdateResource  = UpdateSeries;
            DeleteResource  = DeleteSeries;

            SharedValidator.RuleFor(s => s.ProfileId).ValidId();
            SharedValidator.RuleFor(s => s.LanguageProfileId);

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(seriesPathValidator)
            .SetValidator(seriesAncestorValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.ProfileId).SetValidator(profileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath).IsValidPath().When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.TvdbId).GreaterThan(0).SetValidator(seriesExistsValidator);
            PostValidator.RuleFor(s => s.LanguageProfileId).SetValidator(languageProfileExistsValidator).When(s => s.LanguageProfileId != 0);

            PutValidator.RuleFor(s => s.Path).IsValidPath();

            // Ensure any editing has a valid LanguageProfile
            PutValidator.RuleFor(s => s.LanguageProfileId).SetValidator(languageProfileExistsValidator);
        }
示例#15
0
 public CutoffModule(IBookCutoffService bookCutoffService,
                     IBookService bookService,
                     IAuthorStatisticsService authorStatisticsService,
                     IMapCoversToLocal coverMapper,
                     IUpgradableSpecification upgradableSpecification,
                     IBroadcastSignalRMessage signalRBroadcaster)
     : base(bookService, authorStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "wanted/cutoff")
 {
     _bookCutoffService = bookCutoffService;
     GetResourcePaged   = GetCutoffUnmetBooks;
 }
示例#16
0
 public CutoffModule(IAlbumCutoffService albumCutoffService,
                     IAlbumService albumService,
                     IArtistStatisticsService artistStatisticsService,
                     IMapCoversToLocal coverMapper,
                     IUpgradableSpecification upgradableSpecification,
                     IBroadcastSignalRMessage signalRBroadcaster)
     : base(albumService, artistStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster, "wanted/cutoff")
 {
     _albumCutoffService = albumCutoffService;
     GetResourcePaged    = GetCutoffUnmetAlbums;
 }
示例#17
0
 public CalibreProxy(IHttpClient httpClient,
                     IMapCoversToLocal mediaCoverService,
                     IRemotePathMappingService pathMapper,
                     ICacheManager cacheManager,
                     Logger logger)
 {
     _httpClient        = httpClient;
     _mediaCoverService = mediaCoverService;
     _pathMapper        = pathMapper;
     _bookCache         = cacheManager.GetCache <CalibreBook>(GetType());
     _logger            = logger;
 }
 public MovieLookupController(ISearchForNewMovie searchProxy,
                              IProvideMovieInfo movieInfo,
                              IBuildFileNames fileNameBuilder,
                              IMapCoversToLocal coverMapper,
                              IConfigService configService)
 {
     _movieInfo       = movieInfo;
     _searchProxy     = searchProxy;
     _fileNameBuilder = fileNameBuilder;
     _coverMapper     = coverMapper;
     _configService   = configService;
 }
示例#19
0
 public XbmcMetadata(IDetectXbmcNfo detectNfo,
                     IDiskProvider diskProvider,
                     IMapCoversToLocal mediaCoverService,
                     ITagService tagService,
                     Logger logger)
 {
     _logger            = logger;
     _mediaCoverService = mediaCoverService;
     _tagService        = tagService;
     _diskProvider      = diskProvider;
     _detectNfo         = detectNfo;
 }
示例#20
0
        public MovieModule(IBroadcastSignalRMessage signalRBroadcaster,
                           IMovieService moviesService,
                           IMovieStatisticsService moviesStatisticsService,
                           ISceneMappingService sceneMappingService,
                           IMapCoversToLocal coverMapper,
                           RootFolderValidator rootFolderValidator,
                           MoviePathValidator moviesPathValidator,
                           MovieExistsValidator moviesExistsValidator,
                           DroneFactoryValidator droneFactoryValidator,
                           MovieAncestorValidator moviesAncestorValidator,
                           ProfileExistsValidator profileExistsValidator
                           )
            : base(signalRBroadcaster)
        {
            _moviesService           = moviesService;
            _moviesStatisticsService = moviesStatisticsService;

            _coverMapper = coverMapper;

            GetResourceAll        = AllMovie;
            GetResourcePaged      = GetMoviePaged;
            GetResourceById       = GetMovie;
            Get[TITLE_SLUG_ROUTE] = GetByTitleSlug; /*(options) => {
                                                     * return ReqResExtensions.AsResponse(GetByTitleSlug(options.slug), Nancy.HttpStatusCode.OK);
                                                     * };*/



            CreateResource = AddMovie;
            UpdateResource = UpdateMovie;
            DeleteResource = DeleteMovie;

            Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.ProfileId));

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(moviesPathValidator)
            .SetValidator(droneFactoryValidator)
            .SetValidator(moviesAncestorValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.ProfileId).SetValidator(profileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath).IsValidPath().When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.Title).NotEmpty();
            PostValidator.RuleFor(s => s.TmdbId).NotNull().NotEmpty().SetValidator(moviesExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#21
0
        public AuthorController(IBroadcastSignalRMessage signalRBroadcaster,
                                IAuthorService authorService,
                                IBookService bookService,
                                IAddAuthorService addAuthorService,
                                IAuthorStatisticsService authorStatisticsService,
                                IMapCoversToLocal coverMapper,
                                IManageCommandQueue commandQueueManager,
                                IRootFolderService rootFolderService,
                                RecycleBinValidator recycleBinValidator,
                                RootFolderValidator rootFolderValidator,
                                MappedNetworkDriveValidator mappedNetworkDriveValidator,
                                AuthorPathValidator authorPathValidator,
                                AuthorExistsValidator authorExistsValidator,
                                AuthorAncestorValidator authorAncestorValidator,
                                SystemFolderValidator systemFolderValidator,
                                QualityProfileExistsValidator qualityProfileExistsValidator,
                                MetadataProfileExistsValidator metadataProfileExistsValidator)
            : base(signalRBroadcaster)
        {
            _authorService           = authorService;
            _bookService             = bookService;
            _addAuthorService        = addAuthorService;
            _authorStatisticsService = authorStatisticsService;

            _coverMapper         = coverMapper;
            _commandQueueManager = commandQueueManager;
            _rootFolderService   = rootFolderService;

            Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.QualityProfileId));
            Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.MetadataProfileId));

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(mappedNetworkDriveValidator)
            .SetValidator(authorPathValidator)
            .SetValidator(authorAncestorValidator)
            .SetValidator(recycleBinValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.QualityProfileId).SetValidator(qualityProfileExistsValidator);
            SharedValidator.RuleFor(s => s.MetadataProfileId).SetValidator(metadataProfileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath).IsValidPath().When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.AuthorName).NotEmpty();
            PostValidator.RuleFor(s => s.ForeignAuthorId).NotEmpty().SetValidator(authorExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#22
0
 public AlbumModule(IAlbumService albumService,
                    IReleaseService releaseService,
                    IArtistStatisticsService artistStatisticsService,
                    IMapCoversToLocal coverMapper,
                    IUpgradableSpecification upgradableSpecification,
                    IBroadcastSignalRMessage signalRBroadcaster)
     : base(albumService, artistStatisticsService, coverMapper, upgradableSpecification, signalRBroadcaster)
 {
     _releaseService = releaseService;
     GetResourceAll  = GetAlbums;
     UpdateResource  = UpdateAlbum;
     Put("/monitor", x => SetAlbumsMonitored());
 }
示例#23
0
 public XbmcMetadata(IDetectXbmcNfo detectNfo,
                     IDiskProvider diskProvider,
                     IMapCoversToLocal mediaCoverService,
                     ICreditService creditService,
                     IMovieTranslationService movieTranslationsService,
                     Logger logger)
 {
     _logger                   = logger;
     _mediaCoverService        = mediaCoverService;
     _diskProvider             = diskProvider;
     _detectNfo                = detectNfo;
     _creditService            = creditService;
     _movieTranslationsService = movieTranslationsService;
 }
        protected BookModuleWithSignalR(IBookService bookService,
                                        IAuthorStatisticsService authorStatisticsService,
                                        IMapCoversToLocal coverMapper,
                                        IUpgradableSpecification qualityUpgradableSpecification,
                                        IBroadcastSignalRMessage signalRBroadcaster)
            : base(signalRBroadcaster)
        {
            _bookService                    = bookService;
            _authorStatisticsService        = authorStatisticsService;
            _coverMapper                    = coverMapper;
            _qualityUpgradableSpecification = qualityUpgradableSpecification;

            GetResourceById = GetBook;
        }
示例#25
0
        protected AlbumModuleWithSignalR(IAlbumService albumService,
                                         IArtistStatisticsService artistStatisticsService,
                                         IMapCoversToLocal coverMapper,
                                         IUpgradableSpecification qualityUpgradableSpecification,
                                         IBroadcastSignalRMessage signalRBroadcaster)
            : base(signalRBroadcaster)
        {
            _albumService                   = albumService;
            _artistStatisticsService        = artistStatisticsService;
            _coverMapper                    = coverMapper;
            _qualityUpgradableSpecification = qualityUpgradableSpecification;

            GetResourceById = GetAlbum;
        }
示例#26
0
 protected BookControllerWithSignalR(IBookService bookService,
                                     ISeriesBookLinkService seriesBookLinkService,
                                     IAuthorStatisticsService authorStatisticsService,
                                     IMapCoversToLocal coverMapper,
                                     IUpgradableSpecification qualityUpgradableSpecification,
                                     IBroadcastSignalRMessage signalRBroadcaster)
     : base(signalRBroadcaster)
 {
     _bookService                    = bookService;
     _seriesBookLinkService          = seriesBookLinkService;
     _authorStatisticsService        = authorStatisticsService;
     _coverMapper                    = coverMapper;
     _qualityUpgradableSpecification = qualityUpgradableSpecification;
 }
示例#27
0
        public SeriesModule(IBroadcastSignalRMessage signalRBroadcaster,
                            ISeriesService seriesService,
                            IAddSeriesService addSeriesService,
                            ISeriesStatisticsService seriesStatisticsService,
                            ISceneMappingService sceneMappingService,
                            IMapCoversToLocal coverMapper,
                            RootFolderValidator rootFolderValidator,
                            SeriesPathValidator seriesPathValidator,
                            SeriesExistsValidator seriesExistsValidator,
                            DroneFactoryValidator droneFactoryValidator,
                            SeriesAncestorValidator seriesAncestorValidator,
                            SystemFolderValidator systemFolderValidator,
                            ProfileExistsValidator profileExistsValidator
                            )
            : base(signalRBroadcaster)
        {
            _seriesService           = seriesService;
            _addSeriesService        = addSeriesService;
            _seriesStatisticsService = seriesStatisticsService;
            _sceneMappingService     = sceneMappingService;

            _coverMapper = coverMapper;

            GetResourceAll  = AllSeries;
            GetResourceById = GetSeries;
            CreateResource  = AddSeries;
            UpdateResource  = UpdateSeries;
            DeleteResource  = DeleteSeries;

            Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.ProfileId));

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(seriesPathValidator)
            .SetValidator(droneFactoryValidator)
            .SetValidator(seriesAncestorValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.ProfileId).SetValidator(profileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath).IsValidPath().When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.TvdbId).GreaterThan(0).SetValidator(seriesExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#28
0
        public MovieModule(IBroadcastSignalRMessage signalRBroadcaster,
                           IMovieService movieService,
                           IAddMovieService addMovieService,
                           IMapCoversToLocal coverMapper,
                           RootFolderValidator rootFolderValidator,
                           MappedNetworkDriveValidator mappedNetworkDriveValidator,
                           MoviePathValidator moviesPathValidator,
                           MovieExistsValidator moviesExistsValidator,
                           MovieAncestorValidator moviesAncestorValidator,
                           SystemFolderValidator systemFolderValidator,
                           ProfileExistsValidator profileExistsValidator)
            : base(signalRBroadcaster)
        {
            _movieService    = movieService;
            _addMovieService = addMovieService;

            _coverMapper = coverMapper;

            GetResourceAll  = AllMovie;
            GetResourceById = GetMovie;

            CreateResource = AddMovie;
            UpdateResource = UpdateMovie;
            DeleteResource = DeleteMovie;

            SharedValidator.RuleFor(s => s.ProfileId).ValidId();

            SharedValidator.RuleFor(s => s.Path)
            .Cascade(CascadeMode.StopOnFirstFailure)
            .IsValidPath()
            .SetValidator(rootFolderValidator)
            .SetValidator(mappedNetworkDriveValidator)
            .SetValidator(moviesPathValidator)
            .SetValidator(moviesAncestorValidator)
            .SetValidator(systemFolderValidator)
            .When(s => !s.Path.IsNullOrWhiteSpace());

            SharedValidator.RuleFor(s => s.ProfileId).SetValidator(profileExistsValidator);

            PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.RootFolderPath)
            .IsValidPath()
            .When(s => s.Path.IsNullOrWhiteSpace());
            PostValidator.RuleFor(s => s.Title).NotEmpty().When(s => s.TmdbId <= 0);
            PostValidator.RuleFor(s => s.TmdbId).NotNull().NotEmpty().SetValidator(moviesExistsValidator);

            PutValidator.RuleFor(s => s.Path).IsValidPath();
        }
示例#29
0
        public MovieModule(IBroadcastSignalRMessage signalRBroadcaster,
                           IMovieService moviesService,
                           IMapCoversToLocal coverMapper,
                           string resource)
            : base(signalRBroadcaster, resource)
        {
            _moviesService = moviesService;

            _coverMapper = coverMapper;

            GetResourceAll  = AllMovie;
            GetResourceById = GetMovie;
            CreateResource  = AddMovie;
            UpdateResource  = UpdateMovie;
            DeleteResource  = DeleteMovie;
        }
示例#30
0
 public AudioTagService(IConfigService configService,
                        IMediaFileService mediaFileService,
                        IDiskProvider diskProvider,
                        IArtistService artistService,
                        IMapCoversToLocal mediaCoverService,
                        IEventAggregator eventAggregator,
                        Logger logger)
 {
     _configService     = configService;
     _mediaFileService  = mediaFileService;
     _diskProvider      = diskProvider;
     _artistService     = artistService;
     _mediaCoverService = mediaCoverService;
     _eventAggregator   = eventAggregator;
     _logger            = logger;
 }