コード例 #1
0
ファイル: MusicService.cs プロジェクト: Jc54/PlayMe
	    public MusicService(ILogger logger,
			IMusicProviderFactory musicProviderFactory,
			IAutoPlay autoplayer,
            IDataService<QueuedTrack> queuedTrackDataService,
			IDataService<User> adminUserDataService,
			ISearchSuggestionService searchSuggestionService,
			IRickRollService rickRollService,
			IBroadcastService broadcastService,
			ISoundBoardService soundBoardService,
            ISkipHelper skipHelper,
            IVolume volume,
            IQueueManager queueManager,
            IAlreadyQueuedHelper alreadyQueuedHelper,
            IMusicPlayer musicPlayer,
            ICallbackClient callbackClient,
            IUserService userService,
			IVetoHelper vetoHelper,
            IQueueRuleHelper queueRuleHelper,
            ISettings settings,
            ISearchRuleHelper searchRuleHelper
            )
		{
	        this.vetoHelper = vetoHelper;
	        this.callbackClient = callbackClient;
	        this.alreadyQueuedHelper = alreadyQueuedHelper;
	        this.queueManager = queueManager;
	        this.broadcastService = broadcastService;
			this.rickRollService = rickRollService;
			this.logger = logger;
			this.musicProviderFactory = musicProviderFactory;
			this.autoplayer = autoplayer;
			this.queuedTrackDataService = queuedTrackDataService;
			this.adminUserDataService = adminUserDataService;
			this.searchSuggestionService = searchSuggestionService;
			this.soundBoardService = soundBoardService;
			this.skipHelper = skipHelper;
            this.volume = volume;
            this.musicPlayer = musicPlayer;
	        this.callbackClient = callbackClient;
            this.userService = userService;            
            this.queueRuleHelper = queueRuleHelper;
	        this.settings = settings;

	        this.searchRuleHelper = searchRuleHelper;
	        foreach (var provider in musicProviderFactory.GetAllMusicProviders())
			{
				provider.TrackEnded += musicProvider_TrackEnded;        
			}

			if (settings.AutoStart)
			{
			    PlayNextTrack();
			}
		}
コード例 #2
0
        public MusicService(ILogger logger,
                            IMusicProviderFactory musicProviderFactory,
                            IAutoPlay autoplayer,
                            IDataService <QueuedTrack> queuedTrackDataService,
                            IDataService <User> adminUserDataService,
                            ISearchSuggestionService searchSuggestionService,
                            IRickRollService rickRollService,
                            IBroadcastService broadcastService,
                            ISoundBoardService soundBoardService,
                            ISkipHelper skipHelper,
                            IVolume volume,
                            IQueueManager queueManager,
                            IAlreadyQueuedHelper alreadyQueuedHelper,
                            IMusicPlayer musicPlayer,
                            ICallbackClient callbackClient,
                            IUserService userService,
                            IVetoHelper vetoHelper,
                            IQueueRuleHelper queueRuleHelper,
                            ISettings settings,
                            ISearchRuleHelper searchRuleHelper
                            )
        {
            this.vetoHelper          = vetoHelper;
            this.callbackClient      = callbackClient;
            this.alreadyQueuedHelper = alreadyQueuedHelper;
            this.queueManager        = queueManager;
            this.broadcastService    = broadcastService;
            this.rickRollService     = rickRollService;
            this.logger = logger;
            this.musicProviderFactory    = musicProviderFactory;
            this.autoplayer              = autoplayer;
            this.queuedTrackDataService  = queuedTrackDataService;
            this.adminUserDataService    = adminUserDataService;
            this.searchSuggestionService = searchSuggestionService;
            this.soundBoardService       = soundBoardService;
            this.skipHelper              = skipHelper;
            this.volume          = volume;
            this.musicPlayer     = musicPlayer;
            this.callbackClient  = callbackClient;
            this.userService     = userService;
            this.queueRuleHelper = queueRuleHelper;
            this.settings        = settings;

            this.searchRuleHelper = searchRuleHelper;
            foreach (var provider in musicProviderFactory.GetAllMusicProviders())
            {
                provider.TrackEnded += musicProvider_TrackEnded;
            }

            if (settings.AutoStart)
            {
                PlayNextTrack();
            }
        }
コード例 #3
0
ファイル: DefaultAutoPlay.cs プロジェクト: pvickers/PlayMe
 public DefaultAutoPlay(
     IMusicProviderFactory musicProviderFactory, 
     IDataService<MapReduceResult<TrackScore>> trackScoreDataService,
     IDataService<QueuedTrack> queuedTrackDataService,
     IRandomizerFactory randomizerFactory,
     Settings settings
     )
 {
     this.trackScoreDataService = trackScoreDataService;
     this.queuedTrackDataService = queuedTrackDataService;
     this.musicProviderFactory = musicProviderFactory;
     this.randomizerFactory = randomizerFactory;
     this.settings = settings;
 }
コード例 #4
0
ファイル: DefaultAutoPlay.cs プロジェクト: shbmira/PlayMe
 public DefaultAutoPlay(
     IMusicProviderFactory musicProviderFactory,
     IDataService <MapReduceResult <TrackScore> > trackScoreDataService,
     IDataService <QueuedTrack> queuedTrackDataService,
     IRandomizerFactory randomizerFactory,
     Settings settings
     )
 {
     this.trackScoreDataService  = trackScoreDataService;
     this.queuedTrackDataService = queuedTrackDataService;
     this.musicProviderFactory   = musicProviderFactory;
     this.randomizerFactory      = randomizerFactory;
     this.settings = settings;
 }
コード例 #5
0
        public RandomizerFactory(IMusicProviderFactory musicProviderFactory, ILogger logger, IDataService <QueuedTrack> queuedTrackDataService)
        {
            settings = new Settings();

            logger.Debug("Initialize Randomizerfactory with randomizer #" + settings.Randomizer);

            this.logger = logger;

            //this should really use DI but no IEnumerable<T> implemntation yet, perhaps I should put these in a factory
            randomizers = new List <ITrackRandomizer>()
            {
                new PassThroughRandomizer(logger),
                new OffSameAlbumRandomizer(musicProviderFactory, logger),
                new SimilarArtistRandomizer(musicProviderFactory, logger),
                new OffArtistsAlbumRandomizer(musicProviderFactory, logger)
            };
        }
コード例 #6
0
        public RandomizerFactory(IMusicProviderFactory musicProviderFactory, ILogger logger, IDataService<QueuedTrack> queuedTrackDataService)
        {
            settings = new Settings();

            logger.Debug("Initialize Randomizerfactory with randomizer #" + settings.Randomizer);

            this.logger = logger;

            //this should really use DI but no IEnumerable<T> implemntation yet, perhaps I should put these in a factory
            randomizers = new List<ITrackRandomizer>()
                {
                    new PassThroughRandomizer(logger),
                    new OffSameAlbumRandomizer(musicProviderFactory, logger),
                    new SimilarArtistRandomizer(musicProviderFactory, logger),
                    new OffArtistsAlbumRandomizer(musicProviderFactory, logger)
                };
        }
コード例 #7
0
ファイル: MusicPlayer.cs プロジェクト: Jc54/PlayMe
 public MusicPlayer(
     ILogger logger, 
     IMusicProviderFactory musicProviderFactory, 
     IRickRollService rickRollService, 
     IDataService<QueuedTrack> queuedTrackDataService,
     IAlreadyQueuedHelper alreadyQueuedHelper, 
     ICallbackClient callbackClient,
     INowHelper nowHelper)
 {
     this.nowHelper = nowHelper;
     this.callbackClient = callbackClient;
     this.alreadyQueuedHelper = alreadyQueuedHelper;
     this.queuedTrackDataService = queuedTrackDataService;
     this.rickRollService = rickRollService;
     this.musicProviderFactory = musicProviderFactory;
     this.logger = logger;
     this.callbackClient = callbackClient;
 }
コード例 #8
0
 public MusicPlayer(
     ILogger logger,
     IMusicProviderFactory musicProviderFactory,
     IRickRollService rickRollService,
     IDataService <QueuedTrack> queuedTrackDataService,
     IAlreadyQueuedHelper alreadyQueuedHelper,
     ICallbackClient callbackClient,
     INowHelper nowHelper)
 {
     this.nowHelper              = nowHelper;
     this.callbackClient         = callbackClient;
     this.alreadyQueuedHelper    = alreadyQueuedHelper;
     this.queuedTrackDataService = queuedTrackDataService;
     this.rickRollService        = rickRollService;
     this.musicProviderFactory   = musicProviderFactory;
     this.logger         = logger;
     this.callbackClient = callbackClient;
 }
コード例 #9
0
 public SimilarArtistRandomizer(IMusicProviderFactory musicProviderFactory, ILogger logger)
 {
     this.settings             = new Settings();
     this.logger               = logger;
     this.musicProviderFactory = musicProviderFactory;
 }
コード例 #10
0
ファイル: RickRollService.cs プロジェクト: Jc54/PlayMe
 public RickRollService(IDataService<RickRoll> rickRollDataService,IMusicProviderFactory musicProviderFactory,ILogger logger)
 {
     this.logger = logger;
     this.musicProviderFactory = musicProviderFactory;
     this.rickRollDataService = rickRollDataService;
 }
コード例 #11
0
 public SimilarArtistRandomizer(IMusicProviderFactory musicProviderFactory, ILogger logger)
 {
     this.settings = new Settings();
     this.logger = logger;
     this.musicProviderFactory = musicProviderFactory;
 }
コード例 #12
0
ファイル: OffSameAlbumRandomizer.cs プロジェクト: Jc54/PlayMe
 public OffSameAlbumRandomizer(IMusicProviderFactory musicProviderFactory, ILogger logger)
 {
     this.settings = new Settings();
     this.musicProviderFactory = musicProviderFactory;
     this.logger = logger;
 }
コード例 #13
0
 public OffArtistsAlbumRandomizer(IMusicProviderFactory musicProviderFactory, ILogger logger)
 {
     this.settings             = new Settings();
     this.musicProviderFactory = musicProviderFactory;
     this.logger = logger;
 }
コード例 #14
0
 public RickRollService(IDataService <RickRoll> rickRollDataService, IMusicProviderFactory musicProviderFactory, ILogger logger)
 {
     this.logger = logger;
     this.musicProviderFactory = musicProviderFactory;
     this.rickRollDataService  = rickRollDataService;
 }