public ExtensionProtocolMessageReceivedContext(IExtensionProtocolMessage message, IPeerContext peerContext, Action <IExtensionProtocolMessage> sendMessage) : base(peerContext, sendMessage) { Message = message; }
private void SendExtensionMessage(IPeerContext peerContext, IExtensionProtocolMessage message) { var peerMessageIds = peerContext.GetValue <Dictionary <string, byte> >(ExtensionProtocolMessageIds); if (!peerMessageIds.TryGetValue(message.MessageType, out byte messageType)) { throw new InvalidOperationException($"Peer does not support message type {message.MessageType}"); } SendMessage(peerContext, writer => { writer.Write(messageType); writer.Write(message.Serialize()); }); }
public void SendMessage(IExtensionProtocolMessage message) { sendMessage(message); }