package org.jabref.logic.net; import java.util.Objects; public class ProxyPreferences { private final Boolean useProxy; private final String hostname; private final String port; private final Boolean useAuthentication; private final String username; private final String password; public ProxyPreferences(Boolean useProxy, String hostname, String port, Boolean useAuthentication, String username, String password) { this.useProxy = useProxy; this.hostname = hostname; this.port = port; this.useAuthentication = useAuthentication; this.username = username; this.password = password; } public final Boolean isUseProxy() { return useProxy; } public final String getHostname() { return hostname; } public final String getPort() { return port; } public final Boolean isUseAuthentication() { return useAuthentication; } public final String getUsername() { return username; } public final String getPassword() { return password; } @Override public int hashCode() { return Objects.hash(hostname, password, port, useAuthentication, useProxy, username); } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj instanceof ProxyPreferences) { ProxyPreferences other = (ProxyPreferences) obj; if (hostname == null) { if (other.hostname != null) { return false; } } else if (!hostname.equals(other.hostname)) { return false; } if (password == null) { if (other.password != null) { return false; } } else if (!password.equals(other.password)) { return false; } if (port == null) { if (other.port != null) { return false; } } else if (!port.equals(other.port)) { return false; } if (useAuthentication == null) { if (other.useAuthentication != null) { return false; } } else if (!useAuthentication.equals(other.useAuthentication)) { return false; } if (useProxy == null) { if (other.useProxy != null) { return false; } } else if (!useProxy.equals(other.useProxy)) { return false; } if (username == null) { if (other.username != null) { return false; } } else if (!username.equals(other.username)) { return false; } return true; } return false; } }