Package org.jboss.forge.shell.util

Source Code of org.jboss.forge.shell.util.ProxySettings

package org.jboss.forge.shell.util;

import org.jboss.forge.env.Configuration;
import org.jboss.forge.env.ConfigurationScope;

public class ProxySettings {

    private static final String PROXY_CONFIG_HOST_KEY = "host";
    private static final String PROXY_CONFIG_PORT_KEY = "port";
    private static final String PROXY_CONFIG_USERNAME_KEY = "username";
    private static final String PROXY_CONFIG_PASSWORD_KEY = "password";
   
    private final String proxyHost;
    private final int proxyPort;
    private final String proxyUserName;
    private final String proxyPassword;
   
    private ProxySettings(String proxyHost, int proxyPort, String proxyUserName, String proxyPassword) {
        this.proxyHost = proxyHost;
        this.proxyPort = proxyPort;
        this.proxyUserName = proxyUserName;
        this.proxyPassword = proxyPassword;
    }

    public static ProxySettings fromHostAndPort(String proxyHost, int proxyPort) {
        return new ProxySettings(proxyHost, proxyPort, null, null);
    }
   

    public static ProxySettings fromHostPortAndCredentials(String proxyHost, int proxyPort,
            String proxyUserName, String proxyPassword) {
        return new ProxySettings(proxyHost, proxyPort, proxyUserName, proxyPassword);
    }
   
    public static ProxySettings fromForgeConfiguration(Configuration configuration) {

        Configuration proxyConfig = configuration.getScopedConfiguration(
                 ConfigurationScope.USER).subset("proxy");
        if (proxyConfig != null && !proxyConfig.isEmpty())
        {
            return new ProxySettings(proxyConfig.getString(PROXY_CONFIG_HOST_KEY),
                        proxyConfig.getInt(PROXY_CONFIG_PORT_KEY), proxyConfig.getString(PROXY_CONFIG_USERNAME_KEY),
                        proxyConfig.getString(PROXY_CONFIG_PASSWORD_KEY));
        }
        else
        {
           return null;
        }
    }
   
    public String getProxyHost() {
        return proxyHost;
    }

    public int getProxyPort() {
        return proxyPort;
    }

    public String getProxyUserName() {
        return proxyUserName;
    }

    public String getProxyPassword() {
        return proxyPassword;
    }
   
    public boolean isAuthenticationSupported() {
        return proxyUserName != null && !"".equals(proxyUserName);
    }
}
TOP

Related Classes of org.jboss.forge.shell.util.ProxySettings

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.