예제 #1
0
        /// <inheritdoc />
        public async Task StopAsync()
        {
            IsRunning = false;
            swarmCancellation?.Cancel(true);

            log.Debug($"Stopping {LocalPeer}");

            // Stop the listeners.
            while (listeners.Count > 0)
            {
                await StopListeningAsync(listeners.Keys.First()).ConfigureAwait(false);
            }

            // Disconnect from remote peers.
            Manager.Clear();
            Manager.PeerDisconnected -= OnPeerDisconnected;

            otherPeers.Clear();
            listeners.Clear();
            pendingConnections.Clear();
            pendingRemoteConnections.Clear();
            BlackList = new BlackList <MultiAddress>();
            WhiteList = new WhiteList <MultiAddress>();

            log.Debug($"Stopped {LocalPeer}");
        }
예제 #2
0
        public async Task Empty()
        {
            var policy = new WhiteList <string>();

            Assert.IsTrue(await policy.IsAllowedAsync("a"));
            Assert.IsFalse(await policy.IsNotAllowedAsync("a"));
        }
예제 #3
0
        public async Task NotAllowed()
        {
            var policy = new WhiteList <string>();

            policy.Add("a");
            policy.Add("b");
            Assert.IsFalse(await policy.IsNotAllowedAsync("a"));
            Assert.IsFalse(await policy.IsNotAllowedAsync("b"));
            Assert.IsTrue(await policy.IsNotAllowedAsync("c"));
            Assert.IsTrue(await policy.IsNotAllowedAsync("d"));
        }
예제 #4
0
        public void Allowed()
        {
            var policy = new WhiteList <string>();

            policy.Add("a");
            policy.Add("b");
            Assert.IsTrue(policy.IsAllowed("a"));
            Assert.IsTrue(policy.IsAllowed("b"));
            Assert.IsFalse(policy.IsAllowed("c"));
            Assert.IsFalse(policy.IsAllowed("d"));
        }
예제 #5
0
        /// <inheritdoc />
        public async Task StopAsync()
        {
            log.Debug($"Stoping {LocalPeer}");

            // Stop the listeners.
            while (listeners.Count > 0)
            {
                await StopListeningAsync(listeners.Keys.First());
            }

            // Disconnect from remote peers.
            Manager.Clear();

            otherPeers.Clear();
            listeners.Clear();
            BlackList = new BlackList <MultiAddress>();
            WhiteList = new WhiteList <MultiAddress>();

            log.Debug($"Stoped {LocalPeer}");
        }
예제 #6
0
        public void Empty()
        {
            var policy = new WhiteList <string>();

            Assert.IsTrue(policy.IsAllowed("a"));
        }