예제 #1
0
        /// <inheritdoc />
        public Task StopAsync()
        {
            _log.Debug("Stopping");

            SwarmService.RemoveProtocol(this);
            SwarmService.PeerDiscovered -= Swarm_PeerDiscovered;
            SwarmService.PeerRemoved    -= Swarm_PeerRemoved;

            Stopped?.Invoke(this, EventArgs.Empty);
            ContentRouter?.Dispose();
            return(Task.CompletedTask);
        }
예제 #2
0
        /// <inheritdoc />
        public Task StopAsync()
        {
            _log.Debug("Stopping");

            SwarmService.ConnectionEstablished -= Swarm_ConnectionEstablished;
            foreach (var protocol in Protocols)
            {
                SwarmService.RemoveProtocol(protocol);
            }

            foreach (var cid in _wants.Keys)
            {
                Unwant(cid);
            }

            return(Task.CompletedTask);
        }