/// <summary> /// Sends a network message to this peer. /// </summary> public abstract void Send(Message Message);
public override void Send(Message Message) { lock (this) // Prevents two send streams from being open at the same time { using (Disposable<OutStream> str = this._OutTerminal.Send(this._Settings.ChunkSize)) { Message.Write(Message, str); } } }
/// <summary> /// Writes the given message to a stream. /// </summary> public static void Write(Message Message, OutStream Stream) { MessageType type = MessageType.ForType(Message.GetType()); Stream.WriteByte(type.ID); type.Write(Message, Stream); }
public void Write(Message Message, OutStream Stream) { this._Write(Message, Stream); }
public static new void Write(Message Message, OutStream Stream) { DataRequestMessage drm = (DataRequestMessage)Message; ID.Write(drm.Index, Stream); DataRegion.Write(drm.Region, Stream); Bounty.Write(drm.Bounty, Stream); }