Example #1
0
        public TestCommand(ILogger <TestCommand> logger, ITwitchCommandSubject subject, ITwitchIrcClientAdapter client)
        {
            _logger  = logger;
            _subject = subject;
            _client  = client;

            subject.Attach(this);
            runner = Run();
        }
 public TwitchCommandParser(
     ILogger <TwitchCommandParser> logger,
     ITwitchMessageSubject subject,
     ITwitchIrcClientAdapter client)
 {
     _logger  = logger;
     _subject = subject;
     _client  = client;
     subject.Attach(this);
     queue  = new BlockingCollection <TwitchMessage>(new ConcurrentQueue <TwitchMessage>());
     runner = Run();
 }
Example #3
0
        public CatfactsCommand(
            ILogger <CatfactsCommand> logger,
            ITwitchCommandSubject subject,
            ITwitchIrcClientAdapter ircClient,
            HttpClient httpClient)
        {
            _logger     = logger;
            _subject    = subject;
            _ircClient  = ircClient;
            _httpClient = httpClient;

            subject.Attach(this);
            runner = Run();
        }
Example #4
0
        public SoundsCommand(
            ILogger <SoundsCommand> logger,
            ITwitchCommandSubject subject,
            ITwitchIrcClientAdapter ircClient,
            IOptions <SoundsCommandSettings> config)
        {
            _logger    = logger;
            _subject   = subject;
            _ircClient = ircClient;
            _config    = config.Value;

            Core.Initialize();
            _libVLC = new LibVLC();
            _player = new MediaPlayer(_libVLC);

            subject.Attach(this);
            _runner = Run();
        }