Exemple #1
0
 public SaltySadism(ILogger <SaltySadism> logger, IGameManager gameManager, IGameData gameData, IReplayProvider replayProvider, CancellationTokenProvider tokenProvider)
 {
     this.logger         = logger;
     this.gameManager    = gameManager;
     this.gameData       = gameData;
     this.replayProvider = replayProvider;
     this.tokenProvider  = tokenProvider;
 }
Exemple #2
0
 public SpectateReportCsvWriter(IGameData gameData, AppSettings settings, IReplayProvider provider, IReplayAnalyzer analyzer, CancellationTokenProvider tokenProvider)
 {
     this.gameData      = gameData ?? throw new ArgumentNullException(nameof(gameData));
     this.settings      = settings ?? throw new ArgumentNullException(nameof(settings));
     this.provider      = provider ?? throw new ArgumentNullException(nameof(provider));
     this.analyzer      = analyzer ?? throw new ArgumentNullException(nameof(analyzer));
     this.tokenProvider = tokenProvider ?? throw new ArgumentNullException(nameof(tokenProvider));
 }
 public ReplayConsumer(
     ILogger <ReplayConsumer> logger,
     CancellationTokenProvider tokenProvider,
     IReplayProvider provider,
     ReplayRunner runner,
     ReplayDetailsWriter writer)
 {
     this.tokenProvider = tokenProvider;
     this.logger        = logger;
     this.provider      = provider;
     this.runner        = runner;
     this.writer        = writer;
 }
Exemple #4
0
 public Engine(
     ILogger <Engine> logger,
     ITwitchBot twitchBot,
     IGameManager gameManager,
     IGameData gameData,
     IReplayProvider replayProvider,
     CancellationTokenProvider consoleTokenProvider)
 {
     this.logger               = logger ?? throw new ArgumentNullException(nameof(logger));
     this.twitchBot            = twitchBot ?? throw new ArgumentNullException(nameof(twitchBot));
     this.gameManager          = gameManager ?? throw new ArgumentNullException(nameof(gameManager));
     this.gameData             = gameData ?? throw new ArgumentNullException(nameof(gameData));
     this.replayProvider       = replayProvider ?? throw new ArgumentNullException(nameof(replayProvider));
     this.consoleTokenProvider = consoleTokenProvider ?? throw new ArgumentNullException(nameof(consoleTokenProvider));
 }
        public static List <ReplayActionResult> Replay(this IReplayProvider provider, IReadOnlyCollection <ReplayAction> actions)
        {
            List <ReplayActionResult> list = new List <ReplayActionResult>(actions.Count);

            foreach (ReplayAction replayAction in actions)
            {
                switch (replayAction.Id)
                {
                case ActionId.MarkAsRead:
                    provider.MarkAsRead(new MarkAsReadAction[]
                    {
                        (MarkAsReadAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.MarkAsUnRead:
                    provider.MarkAsUnRead(new MarkAsUnReadAction[]
                    {
                        (MarkAsUnReadAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.Move:
                {
                    IReadOnlyCollection <MoveActionResult> collection = provider.Move(new MoveAction[]
                        {
                            (MoveAction)replayAction
                        });
                    list.AddRange(collection);
                    break;
                }

                case ActionId.Send:
                    provider.Send((SendAction)replayAction);
                    list.Add(null);
                    break;

                case ActionId.Delete:
                    provider.Delete(new DeleteAction[]
                    {
                        (DeleteAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.Flag:
                    provider.Flag(new FlagAction[]
                    {
                        (FlagAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.FlagClear:
                    provider.FlagClear(new FlagClearAction[]
                    {
                        (FlagClearAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.FlagComplete:
                    provider.FlagComplete(new FlagCompleteAction[]
                    {
                        (FlagCompleteAction)replayAction
                    });
                    list.Add(null);
                    break;

                case ActionId.CreateCalendarEvent:
                {
                    IReadOnlyCollection <CreateCalendarEventActionResult> collection2 = provider.CreateCalendarEvent(new CreateCalendarEventAction[]
                        {
                            (CreateCalendarEventAction)replayAction
                        });
                    list.AddRange(collection2);
                    break;
                }

                case ActionId.UpdateCalendarEvent:
                    provider.UpdateCalendarEvent(new UpdateCalendarEventAction[]
                    {
                        (UpdateCalendarEventAction)replayAction
                    });
                    list.Add(null);
                    break;

                default:
                    throw new NotSupportedException();
                }
            }
            return(list);
        }