コード例 #1
0
ファイル: PersistentTransport.cs プロジェクト: Julion/Zebus
        public void OnPeerUpdated(PeerId peerId, PeerUpdateAction peerUpdateAction)
        {
            _innerTransport.OnPeerUpdated(peerId, peerUpdateAction);

            if (!peerId.IsPersistence())
                return;

            if (peerUpdateAction == PeerUpdateAction.Started)
            {
                _persistenceIsDown = false;
                ReplayMessagesWaitingForPersistence();
            }
            else if (peerUpdateAction == PeerUpdateAction.Decommissioned)
            {
                _persistenceIsDown = true;
            }
        }
コード例 #2
0
        public void OnPeerUpdated(PeerId peerId, PeerUpdateAction peerUpdateAction)
        {
            if (peerId == PeerId)
            {
                return;
            }

            if (peerUpdateAction == PeerUpdateAction.Decommissioned && !peerId.IsPersistence())
            {
                Disconnect(peerId);
            }

            // Forgetting a peer when it starts up make sure we don't have a stale socket for it, at the cost of losing the send buffer safety
            if (peerUpdateAction == PeerUpdateAction.Started)
            {
                Disconnect(peerId, delayed: false);
            }
        }
コード例 #3
0
ファイル: PersistentTransport.cs プロジェクト: pascally/Zebus
        public void OnPeerUpdated(PeerId peerId, PeerUpdateAction peerUpdateAction)
        {
            _innerTransport.OnPeerUpdated(peerId, peerUpdateAction);

            if (!peerId.IsPersistence())
            {
                return;
            }

            if (peerUpdateAction == PeerUpdateAction.Started)
            {
                _persistenceIsDown = false;
                ReplayMessagesWaitingForPersistence();
            }
            else if (peerUpdateAction == PeerUpdateAction.Decommissioned)
            {
                _persistenceIsDown = true;
            }
        }