コード例 #1
0
 public ResponseController(IPhraseMuddler phraseMuddler, IChatHelper chatHelper, IWebhookHelper webhookHelper, IOptions <BotSettings> settings)
 {
     _phraseMuddler = phraseMuddler;
     _chatHelper    = chatHelper;
     _webhookHelper = webhookHelper;
     _settings      = settings.Value;
 }
コード例 #2
0
ファイル: PegGiverTests.cs プロジェクト: GlobalX/PockyBot.NET
 public PegGiverTests()
 {
     _pegRepository = Substitute.For <IPegRepository>();
     _chatHelper    = Substitute.For <IChatHelper>();
     _chatHelper.Messages.Returns(Substitute.For <IMessageHandler>());
     _subject = new PegGiver(_pegRepository, _chatHelper);
 }
コード例 #3
0
 public PockyBot(IEnumerable <ITrigger> triggers, ITriggerResponseTester triggerResponseTester, IChatHelper chatHelper, ILogger <PockyBot> logger)
 {
     _triggers = triggers;
     _triggerResponseTester = triggerResponseTester;
     _chatHelper            = chatHelper;
     _logger = logger;
 }
コード例 #4
0
        public RoleConfigTests()
        {
            _pockyUserRepository = Substitute.For <IPockyUserRepository>();
            _chatHelper          = Substitute.For <IChatHelper>();
            _chatHelper.People.Returns(Substitute.For <IPersonHandler>());

            _subject = new RoleConfig(_pockyUserRepository, _chatHelper);
        }
コード例 #5
0
ファイル: Unpeg.cs プロジェクト: GlobalX/PockyBot.NET
 public Unpeg(IRandomnessHandler randomnessHandler, IChatHelper chatHelper, IBackgroundTaskQueue backgroundTaskQueue, IAsyncDelayer asyncDelayer, ILogger <Unpeg> logger)
 {
     _randomnessHandler   = randomnessHandler;
     _chatHelper          = chatHelper;
     _backgroundTaskQueue = backgroundTaskQueue;
     _asyncDelayer        = asyncDelayer;
     _logger = logger;
 }
コード例 #6
0
 public UserLocationSetter(IPockyUserRepository pockyUserRepository, ILocationRepository locationRepository,
                           IUserLocationRepository userLocationRepository, IChatHelper chatHelper)
 {
     _pockyUserRepository    = pockyUserRepository;
     _locationRepository     = locationRepository;
     _userLocationRepository = userLocationRepository;
     _chatHelper             = chatHelper;
 }
コード例 #7
0
 public MessageHub(IChatHelper chatHelper)
 {
     if (chatHelper == null)
     {
         throw new NullReferenceException("chatHelper/MessageHub");
     }
     _chatHelper = chatHelper;
 }
コード例 #8
0
        public MessageController(IChatHelper chatHelper)
        {
            if (chatHelper == null)
            {
                throw new ArgumentNullException();
            }

            _chatHelper = chatHelper;
        }
コード例 #9
0
 public Peg(IPegRequestValidator pegRequestValidator, IPockyUserRepository pockyUserRepository,
            IPegHelper pegHelper, IConfigRepository configRepository, IChatHelper chatHelper,
            IPegGiver pegGiver, ILogger <Peg> logger)
 {
     _pegRequestValidator = pegRequestValidator;
     _pockyUserRepository = pockyUserRepository;
     _pegHelper           = pegHelper;
     _configRepository    = configRepository;
     _chatHelper          = chatHelper;
     _pegGiver            = pegGiver;
     _logger = logger;
 }
コード例 #10
0
ファイル: PegTests.cs プロジェクト: GlobalX/PockyBot.NET
 public PegTests()
 {
     _pegRequestValidator = Substitute.For <IPegRequestValidator>();
     _pockyUserRepository = Substitute.For <IPockyUserRepository>();
     _pegHelper           = Substitute.For <IPegHelper>();
     _configRepository    = Substitute.For <IConfigRepository>();
     _chatHelper          = Substitute.For <IChatHelper>();
     _chatHelper.People.Returns(Substitute.For <IPersonHandler>());
     _pegGiver = Substitute.For <IPegGiver>();
     _subject  = new NET.Services.Triggers.Peg(_pegRequestValidator, _pockyUserRepository, _pegHelper,
                                               _configRepository, _chatHelper, _pegGiver, Substitute.For <ILogger <NET.Services.Triggers.Peg> >());
 }
コード例 #11
0
 public ChatService(
     IAccountService accountService,
     IChatRepository chatRepository,
     IMapperFactory mapperFactory,
     IChatHelper chatHelper,
     IEventService eventService)
 {
     _accountService = accountService;
     _chatRepository = chatRepository;
     _chatHelper     = chatHelper;
     _eventService   = eventService;
     _mapper         = mapperFactory.GetMapper(typeof(BLServices).Name);;
 }
コード例 #12
0
ファイル: PluginContext.cs プロジェクト: JonHaywood/Oberon
 /// <summary>
 /// Initializes a new instance of the <see cref="PluginContext"/> class.
 /// Is marked as internal so external clients cannot instantiate.
 /// </summary>
 /// <param name="client">The client.</param>
 /// <param name="console">The console.</param>
 /// <param name="authorizer">The authorizer.</param>
 /// <param name="chatrooms">The chatrooms.</param>
 /// <param name="listener">The listener.</param>
 /// <param name="botSettings">The bot settings.</param>
 /// <param name="pluginHandler">The plugin handler.</param>
 /// <param name="dispatcher">The system dispatcher.</param>
 /// <param name="packet">The current packet to be processed.</param>
 /// <param name="chatHelper">The chat helper.</param>
 public PluginContext(Client client, IConsole console,
     IAuthorization authorizer, IChatRoomContainer chatrooms,
     IListener listener, IBotSettings botSettings, 
     IPluginHandler pluginHandler, IDispatcher dispatcher, 
     EventPacket packet, IChatHelper chatHelper)
 {
     this.Client = client;
     this.Console = console;
     this.Authorizer = authorizer;
     this.ChatRooms = chatrooms;
     this.Listener = listener;
     this.BotSettings = botSettings;
     this.Plugins = pluginHandler;
     this.Dispatcher = dispatcher;
     this.ThisRoom = chatHelper;
 }
コード例 #13
0
        public static IPockyBot CreatePockyBot(PockyBotSettings settings, IChatHelper chatHelper, IResultsUploader resultsUploader, ILoggerFactory loggerFactory)
        {
            var wrappedSettings        = new OptionsWrapper <PockyBotSettings>(settings);
            var dbContext              = DatabaseContextBuilder.BuildDatabaseContext(settings.DatabaseConnectionString);
            var pockyUserRepository    = new PockyUserRepository(dbContext);
            var configRepository       = new ConfigRepository(dbContext);
            var pegRepository          = new PegRepository(dbContext);
            var locationRepository     = new LocationRepository(dbContext);
            var userLocationRepository = new UserLocationRepository(dbContext);

            var triggerResponseTester = new TriggerResponseTester(wrappedSettings, pockyUserRepository);
            var pegRequestValidator   = new PegRequestValidator(wrappedSettings, configRepository);
            var pegHelper             = new PegHelper(configRepository);
            var pegGiver = new PegGiver(pegRepository, chatHelper);
            var directResultsMessageSender = new DirectResultsMessageSender(chatHelper.Messages);
            var pegResultsHelper           = new PegResultsHelper(configRepository, pegHelper);
            var userLocationGetter         = new UserLocationGetter(pockyUserRepository);
            var userLocationSetter         =
                new UserLocationSetter(pockyUserRepository, locationRepository, userLocationRepository, chatHelper);
            var userLocationDeleter  = new UserLocationDeleter(userLocationRepository);
            var resultsFileGenerator = new ResultsFileGenerator(pegResultsHelper, loggerFactory.CreateLogger <ResultsFileGenerator>(), resultsUploader);
            var usernameUpdater      = new UsernameUpdater(chatHelper.People, pockyUserRepository);

            var triggers = new List <ITrigger>
            {
                new Ping(),
                new Help(pockyUserRepository, wrappedSettings, configRepository),
                new Welcome(wrappedSettings, configRepository),
                new Peg(pegRequestValidator, pockyUserRepository, pegHelper, configRepository, chatHelper, pegGiver, loggerFactory.CreateLogger <Peg>()),
                new Status(pockyUserRepository, configRepository, pegHelper, loggerFactory.CreateLogger <Status>()),
                new Results(pockyUserRepository, pegResultsHelper, resultsFileGenerator, loggerFactory.CreateLogger <Results>()),
                new Finish(pockyUserRepository, pegResultsHelper, directResultsMessageSender, resultsFileGenerator, loggerFactory.CreateLogger <Finish>(), usernameUpdater),
                new Reset(pegRepository, loggerFactory.CreateLogger <Reset>()),
                new Keywords(configRepository),
                new Rotation(configRepository),
                new LocationConfig(locationRepository, pockyUserRepository),
                new UserLocation(pockyUserRepository, userLocationGetter, userLocationSetter, userLocationDeleter),
                new NumberConfig(configRepository),
                new StringConfig(configRepository),
                new RoleConfig(pockyUserRepository, chatHelper),
                new RemoveUser(pockyUserRepository, loggerFactory.CreateLogger <RemoveUser>()),
                new LocationWeight(configRepository, locationRepository),
                new Default(wrappedSettings)
            };

            return(new PockyBot(triggers, triggerResponseTester, chatHelper, loggerFactory.CreateLogger <PockyBot>()));
        }
コード例 #14
0
        public ChatPageViewModel(IChatHelper chat, IEventAggregator events, IProfile profile,
                                 ICommentEndpoint commentEndpoint, IAuthenticatedUser user, IPhoto photo, IMapper mapper)
        {
            _chat            = chat;
            _events          = events;
            _profile         = profile;
            _commentEndpoint = commentEndpoint;
            _user            = user;
            _photo           = photo;
            _mapper          = mapper;

            _pagination = new PaginationHelper();

            _chat.GetReceive += OnGetReceive;

            _events.SubscribeOnPublishedThread(this);
        }
コード例 #15
0
ファイル: UnpegTests.cs プロジェクト: GlobalX/PockyBot.NET
        public UnpegTests()
        {
            _randomnessHandler = Substitute.For <IRandomnessHandler>();
            _randomnessHandler.Random.Returns(Substitute.For <Random>());
            _chatHelper = Substitute.For <IChatHelper>();
            _chatHelper.Messages.Returns(Substitute.For <IMessageHandler>());
            _asyncDelayer = Substitute.For <IAsyncDelayer>();
            _asyncDelayer.Delay(Arg.Any <TimeSpan>(), Arg.Any <CancellationToken>())
            .ReturnsForAnyArgs(Task.CompletedTask);
            var backgroundTaskQueue = Substitute.For <IBackgroundTaskQueue>();

            backgroundTaskQueue
            .WhenForAnyArgs(x => x.QueueBackgroundWorkItem(Arg.Any <Func <CancellationToken, Task> >()))
            .Do(async x => await((Func <CancellationToken, Task>)x[0])(new CancellationToken()));
            _subject = new Unpeg(_randomnessHandler, _chatHelper, backgroundTaskQueue, _asyncDelayer,
                                 Substitute.For <ILogger <Unpeg> >());
        }
コード例 #16
0
 public CommentEndpoint(IChatHelper chat, IApiHelper apiHelper)
 {
     _chat      = chat;
     _apiHelper = apiHelper;
 }
コード例 #17
0
 public RootLuisDialog(IChatHelper chat, ICalculationApi dllCalculationApi)
 {
     _chat = chat;
     this._dllCalculationApi = dllCalculationApi;
 }
コード例 #18
0
 public PegGiver(IPegRepository pegRepository, IChatHelper chatHelper)
 {
     _pegRepository = pegRepository;
     _chatHelper    = chatHelper;
 }
コード例 #19
0
ファイル: RoleConfig.cs プロジェクト: GlobalX/PockyBot.NET
 public RoleConfig(IPockyUserRepository pockyUserRepository, IChatHelper chatHelper)
 {
     _pockyUserRepository = pockyUserRepository;
     _chatHelper          = chatHelper;
 }
コード例 #20
0
 public RootDialog(IChatHelper chat)
 {
     _chat = chat;
 }