/// <summary> /// Constructor. /// </summary> /// <param name="gameRoundDataManager">Game Round Data manager</param> /// <param name="gameRoundLockManager">Game Lock manager.</param> /// <param name="gameStatisticsPublisher">Game stats publisher.</param> /// <param name="logger">Logging.</param> public NoMoreBetsEventHandler(IGameRoundDataManager gameRoundDataManager, IObjectLockManager <GameRoundId> gameRoundLockManager, IGameStatisticsPublisher gameStatisticsPublisher, ILogger <NoMoreBetsEventHandler> logger) : base(gameRoundDataManager: gameRoundDataManager, gameRoundLockManager: gameRoundLockManager, logger: logger) { this._gameStatisticsPublisher = gameStatisticsPublisher ?? throw new ArgumentNullException(nameof(gameStatisticsPublisher)); }
/// <summary> /// Constructor. /// </summary> /// <param name="gameStatisticsPublisher">Game stats web socket publisher</param> /// <param name="gameRoundDataManager">Game Round Data manager</param> /// <param name="gameRoundLockManager">Game Round Lock manager.</param> /// <param name="gameRoundTimeCalculator">Game Round time calculator.</param> /// <param name="dateTimeSource">Source of time.</param> /// <param name="logger">Logging.</param> public StartGameRoundEventHandler(IGameStatisticsPublisher gameStatisticsPublisher, IGameRoundDataManager gameRoundDataManager, IObjectLockManager <GameRoundId> gameRoundLockManager, IGameRoundTimeCalculator gameRoundTimeCalculator, IDateTimeSource dateTimeSource, ILogger <StartGameRoundEventHandler> logger) : base(gameRoundDataManager: gameRoundDataManager, gameRoundLockManager: gameRoundLockManager, logger: logger) { this._gameStatisticsPublisher = gameStatisticsPublisher ?? throw new ArgumentNullException(nameof(gameStatisticsPublisher)); this._gameRoundTimeCalculator = gameRoundTimeCalculator ?? throw new ArgumentNullException(nameof(gameRoundTimeCalculator)); this._dateTimeSource = dateTimeSource ?? throw new ArgumentNullException(nameof(dateTimeSource)); }
/// <summary> /// Constructor. /// </summary> /// <param name="ethereumAccountManager">Ethereum account manager.</param> /// <param name="gameRoundDataManager">Game round data manager.</param> /// <param name="gameManager">Game Manager.</param> /// <param name="gameRoundLockManager">Game round lock manager.</param> /// <param name="dateTimeSource">Source of time.</param> /// <param name="logger">Logging.</param> public EndGameService(IEthereumAccountManager ethereumAccountManager, IGameRoundDataManager gameRoundDataManager, IGameManager gameManager, IObjectLockManager <GameRoundId> gameRoundLockManager, IDateTimeSource dateTimeSource, ILogger <EndGameService> logger) { this._ethereumAccountManager = ethereumAccountManager ?? throw new ArgumentNullException(nameof(ethereumAccountManager)); this._gameRoundDataManager = gameRoundDataManager ?? throw new ArgumentNullException(nameof(gameRoundDataManager)); this._gameManager = gameManager ?? throw new ArgumentNullException(nameof(gameManager)); this._gameRoundLockManager = gameRoundLockManager ?? throw new ArgumentNullException(nameof(gameRoundLockManager)); this._dateTimeSource = dateTimeSource ?? throw new ArgumentNullException(nameof(dateTimeSource)); this._logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
/// <summary> /// Constructor /// </summary> /// <param name="ethereumAccountManager">The ethereum account manager.</param> /// <param name="gameManager">Game Manager.</param> /// <param name="gameRoundDataManager">Game round data manager.</param> /// <param name="ethereumBlockStatus">Ethereum block status.</param> /// <param name="gameManagerLockManager">Game contract lock manager.</param> /// <param name="contractInfoRegistry">The contract info registry.</param> /// <param name="gamesList">Game list.</param> /// <param name="playerCountManager">Player count manager.</param> /// <param name="logger">Logger</param> public StartGameService(IEthereumAccountManager ethereumAccountManager, IGameManager gameManager, IGameRoundDataManager gameRoundDataManager, IEthereumBlockStatus ethereumBlockStatus, IObjectLockManager <EthereumAddress> gameManagerLockManager, IContractInfoRegistry contractInfoRegistry, IGamesList gamesList, IPlayerCountManager playerCountManager, ILogger <StartGameService> logger) { this._ethereumAccountManager = ethereumAccountManager ?? throw new ArgumentNullException(nameof(ethereumAccountManager)); this._gameManager = gameManager ?? throw new ArgumentNullException(nameof(gameManager)); this._gameRoundDataManager = gameRoundDataManager ?? throw new ArgumentNullException(paramName: nameof(gameRoundDataManager)); this._ethereumBlockStatus = ethereumBlockStatus ?? throw new ArgumentNullException(nameof(ethereumBlockStatus)); this._gameManagerLockManager = gameManagerLockManager ?? throw new ArgumentNullException(nameof(gameManagerLockManager)); this._gamesList = gamesList ?? throw new ArgumentNullException(nameof(gamesList)); this._playerCountManager = playerCountManager ?? throw new ArgumentNullException(nameof(playerCountManager)); this._logger = logger ?? throw new ArgumentNullException(paramName: nameof(logger)); this._contractInfo = contractInfoRegistry.FindContractInfo(WellKnownContracts.GameManager); }
/// <summary> /// Constructor. /// </summary> /// <param name="gameRoundDataManager">Game Round Data manager</param> /// <param name="gameRoundLockManager">Game Lock manager.</param> /// <param name="logger">Logging.</param> protected GameRoundEventHandlerBase(IGameRoundDataManager gameRoundDataManager, IObjectLockManager <GameRoundId> gameRoundLockManager, ILogger logger) { this.GameRoundDataManager = gameRoundDataManager ?? throw new ArgumentNullException(nameof(gameRoundDataManager)); this._gameRoundLockManager = gameRoundLockManager ?? throw new ArgumentNullException(nameof(gameRoundLockManager)); this.Logger = logger ?? throw new ArgumentNullException(nameof(logger)); }