void LoadSupports(BEncodedDictionary supports) { var list = new ExtensionSupports(); foreach (KeyValuePair <BEncodedString, BEncodedValue> k in supports) { list.Add(new ExtensionSupport(k.Key.Text, (byte)((BEncodedNumber)k.Value).Number)); } Supports = list; }
public ExtendedHandshakeMessage(bool privateTorrent, int?metadataSize, int localListenPort) : base(Support.MessageId) { Supports = new ExtensionSupports(SupportedMessages); if (privateTorrent) { Supports.Remove(PeerExchangeMessage.Support); } MetadataSize = metadataSize; LocalPort = localListenPort; }
public ExtendedHandshakeMessage() : base(Support.MessageId) { Supports = new ExtensionSupports(); }
public LTMetadata(ExtensionSupports supportedExtensions, MessageType type, int piece, byte[] metadata) : this(supportedExtensions.MessageId(Support), type, piece, metadata) { }
public LTMetadata(ExtensionSupports supportedExtensions, MessageType type, int piece) : this(supportedExtensions, type, piece, null) { }
public LTMetadata(ExtensionSupports supportedExtensions, MessageType type, int piece) : this(supportedExtensions, type, piece, Array.Empty <byte> ()) { }
public PeerExchangeMessage(ExtensionSupports supportedExtensions, byte[] added, byte[] addedDotF, byte[] dropped) : this() { Initialize(supportedExtensions, (byte[])added.Clone(), (byte[])addedDotF.Clone(), (byte[])dropped.Clone()); }
public void Initialize(ExtensionSupports supportedExtensions, ReadOnlyMemory <byte> added, ReadOnlyMemory <byte> addedDotF, ReadOnlyMemory <byte> dropped) { ExtensionId = supportedExtensions.MessageId(Support); Initialize(added, addedDotF, dropped); }