public ReplayPlaybackManager(ICommandQueue commandQueue, IClock clock, ILogger logger)
        {
            _commandQueue = commandQueue;
            _clock        = clock;
            _logger       = logger;

            // We do this here and not as part of IInitializable to avoid race condition issues.
            _commandQueue.AddListener(this);
        }
        public NetworkCommandBroadcaster(SequenceIndex sequenceIndex,
                                         ICommandQueue commandQueue,
                                         INetworkManager networkManager,
                                         INetworkMessageHandler networkMessageHandler,
                                         INetworkMessageSerializer networkMessageSerializer)
        {
            _sequenceIndex            = sequenceIndex;
            _networkManager           = networkManager;
            _networkMessageHandler    = networkMessageHandler;
            _networkMessageSerializer = networkMessageSerializer;

            _disposable = networkManager.ClientConnected.Subscribe(Observer.Create <int>(HandleClientConnected));
            commandQueue.AddListener(this);
        }
 public void Initialize()
 {
     _commandQueue.AddListener(this);
 }