public override void InstallBindings() { // These two classes need a non lazy initialization since they are listening to events. Container.BindInterfacesTo <NetworkCommandReceiver>().AsSingle().NonLazy(); Container.BindInterfacesTo <NetworkCommandBroadcaster>().AsSingle().NonLazy(); Container.Bind <SequenceIndex>().FromInstance(SequenceIndex.Of(0)).AsSingle(); }
public NetworkCommandReceiver(SequenceIndex sequenceIndex, INetworkManager networkManager, INetworkMessageHandler networkMessageHandler, INetworkMessageSerializer messageSerializer, ICommandQueue commandQueue) { _sequenceIndex = sequenceIndex; _networkManager = networkManager; _networkMessageHandler = networkMessageHandler; _messageSerializer = messageSerializer; _commandQueue = commandQueue; }
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); }