public void SentBlock(PeerId peer, int pieceIndex) { SeededPiece piece = advertisedPieces.Find(delegate(SeededPiece p) { return p.Peer == peer && p.Index == pieceIndex; }); if (piece == null) return; piece.SeededAt = DateTime.Now; piece.BlocksSent++; if (piece.TotalBlocks == piece.BlocksSent) advertisedPieces.Remove(piece); }
protected override void HandleRequestMessage(PeerId id, RequestMessage message) { base.HandleRequestMessage(id, message); _unchoker.SentBlock(id, message.PieceIndex); }