private void SendMessage(DhtMessage message, IPEndPoint endpoint) { lastSent = DateTime.Now; byte[] buffer = message.Encode(); listener.Send(buffer, endpoint); RaiseMessageSent(endpoint, message); }
public void Send(DhtMessage msg, IPEndPoint endpoint) { if (msg.TransactionId == null) { if (msg is ResponseMessage) { //throw new ArgumentException("Message must have a transaction id"); } msg.TransactionId = TransactionId.NextId(); } var buffer = msg.Encode(); udpSocketListener.Send(buffer, endpoint); }
private void Compare(DhtMessage m, string expected) { byte[] b = m.Encode(); Assert.AreEqual(Encoding.UTF8.GetString(b), expected); }
public void RaiseMessageReceived(DhtMessage message, IPEndPoint endpoint) => MessageReceived?.Invoke(message.Encode(), endpoint);