Example #1
0
 public RefreshAlbumService(IAlbumService albumService,
                            IArtistService artistService,
                            IAddArtistService addArtistService,
                            IArtistMetadataService artistMetadataService,
                            IReleaseService releaseService,
                            IProvideAlbumInfo albumInfo,
                            IRefreshAlbumReleaseService refreshAlbumReleaseService,
                            IMediaFileService mediaFileService,
                            IHistoryService historyService,
                            IEventAggregator eventAggregator,
                            ICheckIfAlbumShouldBeRefreshed checkIfAlbumShouldBeRefreshed,
                            IMapCoversToLocal mediaCoverService,
                            Logger logger)
     : base(logger, artistMetadataService)
 {
     _albumService                  = albumService;
     _artistService                 = artistService;
     _addArtistService              = addArtistService;
     _releaseService                = releaseService;
     _albumInfo                     = albumInfo;
     _refreshAlbumReleaseService    = refreshAlbumReleaseService;
     _mediaFileService              = mediaFileService;
     _historyService                = historyService;
     _eventAggregator               = eventAggregator;
     _checkIfAlbumShouldBeRefreshed = checkIfAlbumShouldBeRefreshed;
     _mediaCoverService             = mediaCoverService;
     _logger = logger;
 }
Example #2
0
 public ImportListSyncService(IImportListFactory importListFactory,
                              IImportListExclusionService importListExclusionService,
                              IFetchAndParseImportList listFetcherAndParser,
                              ISearchForNewAlbum albumSearchService,
                              ISearchForNewArtist artistSearchService,
                              IArtistService artistService,
                              IAlbumService albumService,
                              IAddArtistService addArtistService,
                              IAddAlbumService addAlbumService,
                              IEventAggregator eventAggregator,
                              IManageCommandQueue commandQueueManager,
                              Logger logger)
 {
     _importListFactory          = importListFactory;
     _importListExclusionService = importListExclusionService;
     _listFetcherAndParser       = listFetcherAndParser;
     _albumSearchService         = albumSearchService;
     _artistSearchService        = artistSearchService;
     _artistService       = artistService;
     _albumService        = albumService;
     _addArtistService    = addArtistService;
     _addAlbumService     = addAlbumService;
     _eventAggregator     = eventAggregator;
     _commandQueueManager = commandQueueManager;
     _logger = logger;
 }
 public ImportApprovedTracks(IUpgradeMediaFiles trackFileUpgrader,
                             IMediaFileService mediaFileService,
                             IAudioTagService audioTagService,
                             ITrackService trackService,
                             IArtistService artistService,
                             IAddArtistService addArtistService,
                             IAlbumService albumService,
                             IRefreshAlbumService refreshAlbumService,
                             IRootFolderService rootFolderService,
                             IRecycleBinProvider recycleBinProvider,
                             IExtraService extraService,
                             IDiskProvider diskProvider,
                             IReleaseService releaseService,
                             IEventAggregator eventAggregator,
                             IManageCommandQueue commandQueueManager,
                             Logger logger)
 {
     _trackFileUpgrader   = trackFileUpgrader;
     _mediaFileService    = mediaFileService;
     _audioTagService     = audioTagService;
     _trackService        = trackService;
     _artistService       = artistService;
     _addArtistService    = addArtistService;
     _albumService        = albumService;
     _refreshAlbumService = refreshAlbumService;
     _rootFolderService   = rootFolderService;
     _recycleBinProvider  = recycleBinProvider;
     _extraService        = extraService;
     _diskProvider        = diskProvider;
     _releaseService      = releaseService;
     _eventAggregator     = eventAggregator;
     _commandQueueManager = commandQueueManager;
     _logger = logger;
 }
Example #4
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();
        }
Example #5
0
 public AddAlbumService(IArtistService artistService,
                        IAddArtistService addArtistService,
                        IAlbumService albumService,
                        IProvideAlbumInfo albumInfo,
                        IImportListExclusionService importListExclusionService,
                        Logger logger)
 {
     _artistService              = artistService;
     _addArtistService           = addArtistService;
     _albumService               = albumService;
     _albumInfo                  = albumInfo;
     _importListExclusionService = importListExclusionService;
     _logger = logger;
 }
Example #6
0
 public ArtistImportModule(IAddArtistService addArtistService)
     : base("/artist/import")
 {
     _addArtistService = addArtistService;
     Post("/", x => Import());
 }