public override void deletePassword(Scheme scheme, int port, string hostName, string user) { string url = new HostUrlProvider().withPath(false).get(scheme, port, user, hostName, null); PreferencesFactory.get().deleteProperty(url); }
public bool isReachable(Host h) { if (h.getProtocol().getScheme().name().Equals("http") || h.getProtocol().getScheme().name().Equals("https")) { try { WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials; WebRequest.DefaultCachePolicy = new RequestCachePolicy(RequestCacheLevel.NoCacheNoStore); var url = new HostUrlProvider().withUsername(false).withPath(true).get(h); if (Log.isDebugEnabled()) { Log.debug($"Reachability test with url {url}"); } WebRequest request = WebRequest.Create(url); request.Timeout = 10000; using (request.GetResponse()) { return(true); } } catch (WebException e) { if (Log.isDebugEnabled()) { Log.debug($"WebException thrown with status {e.Status}"); } switch (e.Status) { case WebExceptionStatus.ProtocolError: case WebExceptionStatus.TrustFailure: case WebExceptionStatus.Success: return(true); } return(false); } catch (Exception e) { Log.error("Generic exception while checking for reachability", e); return(false); } } try { if (Log.isDebugEnabled()) { Log.debug($"Try TCP connection to {h.getHostname()}:{h.getPort()}"); } TcpClient c = new TcpClient(h.getHostname(), h.getPort()); c.Close(); return(true); } catch (SocketException e) { return(false); } }
// Login Password public override void addPassword(Scheme scheme, int port, String hostname, String user, String password) { string url = new HostUrlProvider().withPath(false).get(scheme, port, user, hostname, null); PreferencesFactory.get().setProperty(url, DataProtector.Encrypt(password)); }