示例#1
0
        public Task WriteTo <T>(IPeerProxy peer, T data)
        {
            if (!ConnectedPeersProxy.Contains(peer))
            {
                throw new ArgumentException($"Unknown peerClient: {peer}");
            }

            RawPacket rawPacket = new RawPacket();

            rawPacket.Payload = PreparePeerData(peer, data);
            rawPacket.MAC     = Hasher.ComputeHash(rawPacket.Payload);
            byte[] serializedPacket = rawPacket.SerializeToBuffer();
            return(peer.SendAsync(serializedPacket));
        }