private async Task <bool> CanConnectUsingBasic(Connection connection) { try { var proxy = new WITSMLWebServiceConnection(connection.Uri, WMLSVersion.WITSML141); if (!string.IsNullOrWhiteSpace(connection.Username)) { proxy.Username = connection.Username; proxy.SetSecurePassword(connection.SecurePassword); } connection.SetServerCertificateValidation(); proxy.GetVersion(); _log.Debug("Witsml connection test passed"); return(await Task.FromResult(true)); } catch (Exception ex) { _log.Error("Witsml connection test failed: {0}", ex); return(await Task.FromResult(false)); } }
/// <summary> /// Updates a WITSMLWebServiceConnection for the current connection settings. /// </summary> /// <param name="connection">The connection.</param> /// <param name="proxy">The WITSML web service proxy.</param> /// <returns>The <see cref="WITSMLWebServiceConnection"/> instance.</returns> public static WITSMLWebServiceConnection UpdateProxy(this Connection connection, WITSMLWebServiceConnection proxy) { proxy.Proxy = connection.CreateWebProxy(); proxy.Url = connection.Uri; proxy.Timeout *= 5; proxy.AcceptCompressedResponses = connection.SoapAcceptCompressedResponses; proxy.CompressRequests = connection.SoapRequestCompressionMethod == CompressionMethods.Gzip; connection.SetServerCertificateValidation(); if (!string.IsNullOrWhiteSpace(connection.Username)) { if (connection.PreAuthenticate) { proxy.Headers = connection.GetAuthorizationHeader(); proxy.IsPreAuthenticationEnabled = connection.PreAuthenticate; } else { proxy.Username = connection.Username; proxy.SetSecurePassword(connection.SecurePassword); } } return(proxy); }
/// <summary> /// Creates a WITSMLWebServiceConnection for the current connection uri and WITSML version. /// </summary> /// <param name="connection">The connection.</param> /// <param name="version">The WITSML version.</param> /// <returns>A <see cref="WITSMLWebServiceConnection"/> instance.</returns> public static WITSMLWebServiceConnection CreateProxy(this Connection connection, WMLSVersion version) { //_log.DebugFormat("A new Proxy is being created with URI: {0}; WitsmlVersion: {1};", connection.Uri, version); var proxy = new WITSMLWebServiceConnection(connection.Uri, version); proxy.Timeout *= 5; if (!string.IsNullOrWhiteSpace(connection.Username)) { proxy.Username = connection.Username; proxy.SetSecurePassword(connection.SecurePassword); } return(proxy); }
/// <summary> /// Updates a WITSMLWebServiceConnection for the current connection settings. /// </summary> /// <param name="connection">The connection.</param> /// <param name="proxy">The WITSML web service proxy.</param> /// <returns>The <see cref="WITSMLWebServiceConnection"/> instance.</returns> public static WITSMLWebServiceConnection UpdateProxy(this Connection connection, WITSMLWebServiceConnection proxy) { proxy.Proxy = connection.CreateWebProxy(); proxy.Url = connection.Uri; proxy.Timeout *= 5; connection.SetServerCertificateValidation(); if (!string.IsNullOrWhiteSpace(connection.Username)) { if (connection.PreAuthenticate) { proxy.Headers = connection.GetAuthorizationHeader(); proxy.IsPreAuthenticationEnabled = connection.PreAuthenticate; } else { proxy.Username = connection.Username; proxy.SetSecurePassword(connection.SecurePassword); } } return(proxy); }