public static MagnetLink Resolve(String magnetLink) { IEnumerable<KeyValuePair<String, String>> values = null; if (IsMagnetLink(magnetLink)) { values = SplitURLIntoParts(magnetLink.Substring(8)); } if (values == null) return null; MagnetLink magnet = new MagnetLink(); foreach (KeyValuePair<string, string> pair in values) { if (pair.Key == "xt") { if (!IsXTValidHash(pair.Value)) { continue; } magnet.HashString = pair.Value.Substring(9); } if (pair.Key == "dn") { magnet.Name = pair.Value; } if (pair.Key == "tr") { magnet.Trackers.Add(pair.Value); } } return magnet; }
public static MagnetLink Resolve(String magnetLink) { IEnumerable <KeyValuePair <String, String> > values = null; if (IsMagnetLink(magnetLink)) { values = SplitURLIntoParts(magnetLink.Substring(8)); } if (values == null) { return(null); } MagnetLink magnet = new MagnetLink(); foreach (KeyValuePair <string, string> pair in values) { if (pair.Key == "xt") { if (!IsXTValidHash(pair.Value)) { continue; } magnet.HashString = pair.Value.Substring(9); } if (pair.Key == "dn") { magnet.Name = pair.Value; } if (pair.Key == "tr") { magnet.Trackers.Add(pair.Value); } } return(magnet); }
public static MagnetLink Resolve(string magnetLink) { var values = IsMagnetLink(magnetLink) ? SplitURLIntoParts(magnetLink.Substring(8)) : null; if (values == null) { return(null); } var magnet = new MagnetLink(); foreach (var pair in values) { if (pair.Key == "xt") { if (!IsXTValidHash(pair.Value)) { continue; } magnet.HashString = pair.Value.Substring(9); } if (pair.Key == "dn") { magnet.Name = pair.Value; } if (pair.Key == "tr") { magnet.Trackers.Add(pair.Value); } } return(magnet); }
public bool Load(MagnetLink magnetLink) { if (magnetLink == null) { return(false); } if (magnetLink.Hash == null) { return(false); } HashString = magnetLink.HashString; if (magnetLink.Trackers != null) { foreach (string tracker in magnetLink.Trackers) { AnnounceList.Add(tracker); } } return(true); }
public Metadata(MagnetLink magnetLink) { Init(); Load(magnetLink); }
public bool Load(MagnetLink magnetLink) { if (magnetLink == null) return false; if (magnetLink.Hash == null) return false; HashString = magnetLink.HashString; if (magnetLink.Trackers != null) { foreach (string tracker in magnetLink.Trackers) { AnnounceList.Add(tracker); } } return true; }