/// <summary>
        /// Преобразует строку в экземпляр класса <see cref="Socks5ProxyClient"/>. Возвращает значение, указывающее, успешно ли выполнено преобразование.
        /// </summary>
        /// <param name="proxyAddress">Строка вида - хост:порт:имя_пользователя:пароль. Три последних параметра являются необязательными.</param>
        /// <param name="result">Если преобразование выполнено успешно, то содержит экземпляр класса <see cref="Socks5ProxyClient"/>, иначе <see langword="null"/>.</param>
        /// <returns>Значение <see langword="true"/>, если параметр <paramref name="proxyAddress"/> преобразован успешно, иначе <see langword="false"/>.</returns>
        // ReSharper disable once UnusedMember.Global
        public static bool TryParse(string proxyAddress, out Socks5ProxyClient result)
        {
            if (!ProxyClient.TryParse(ProxyType.Socks5, proxyAddress, out var proxy))
            {
                result = null;
                return(false);
            }

            result = proxy as Socks5ProxyClient;
            return(true);
        }
Beispiel #2
0
 /// <inheritdoc />
 /// <summary>
 /// Инициализирует новый экземпляр класса <see cref="!:Leaf.xNet.Net.ProxyException" /> заданным сообщением об ошибке и прокси-клиентом.
 /// </summary>
 /// <param name="message">Сообщение об ошибке с объяснением причины исключения.</param>
 /// <param name="proxyClient">Прокси-клиент, в котором произошла ошибка.</param>
 /// <param name="innerException">Исключение, вызвавшее текущие исключение, или значение <see langword="null" />.</param>
 public ProxyException(string message, ProxyClient proxyClient, Exception innerException = null)
     : base(message, innerException)
 {
     ProxyClient = proxyClient;
 }