Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /* 
   * Licensed to Aduna under one or more contributor license agreements.  
   * See the NOTICE.txt file distributed with this work for additional 
   * information regarding copyright ownership. 
   *
   * Aduna licenses this file to you under the terms of the Aduna BSD 
   * License (the "License"); you may not use this file except in compliance 
   * with the License. See the LICENSE.txt file distributed with this work 
   * for the full License.
  *
  * Unless required by applicable law or agreed to in writing, software 
  * distributed under the License is distributed on an "AS IS" BASIS, 
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
  * implied. See the License for the specific language governing permissions
  * and limitations under the License.
  */
  
 package info.aduna.app.net;
 
 import java.io.File;
 
Utility class for handling proxy connection settings.
 
 public class ProxySettings implements Configuration {
 
 	private final static String PROPNAME_PROXIES_ENABLED = "proxies.enabled";
 
 	private final static String PROPNAME_PROXIES_NONPROXYHOSTS_STARTING = "proxies.nonProxyHosts.starting";
 
 	private final static String PROPNAME_HTTP_PROXYHOST = "http.proxyHost";
 
 	private final static String PROPNAME_HTTP_PROXYPORT = "http.proxyPort";
 
 	private final static String PROPNAME_HTTPS_PROXYHOST = "https.proxyHost";
 
 	private final static String PROPNAME_HTTPS_PROXYPORT = "https.proxyPort";
 
 	private final static String PROPNAME_FTP_PROXYHOST = "ftp.proxyHost";
 
 	private final static String PROPNAME_FTP_PROXYPORT = "ftp.proxyPort";
 
 	private final static String PROPNAME_SOCKS_PROXYHOST = "socksProxyHost";
 
 	private final static String PROPNAME_SOCKS_PROXYPORT = "socksProxyPort";
 
 	private Properties props;
 
 	public static final String PROXY_SETTINGS_FILENAME = "proxy.properties";
 	
 	private File confDir;
 	
 	private File propsFile;
 
 	public ProxySettings(File applicationDataDirthrows IOException {
 		 = new File(applicationDataDir);
 	}
 
 	public void setProperty(String keyString val) {
 		if (val == null) {
 			.remove(key);
 		}
 		else {
 			.setProperty(keyval);
 		}
 	}
 
 	private void setSystemProperty(String keyString val) {
 		if (val == null) {
 			System.getProperties().remove(key);
 		}
 		else {
 			System.setProperty(keyval);
 		}
 	}
 
 	public boolean getProxiesEnabled() {
 		if (val != null) {
 			val = val.trim();
 		}
 		return String.valueOf(true).equalsIgnoreCase(val);
 	}
 
 	public void setProxiesEnabled(boolean proxiesEnabled) {
 		.setProperty(, String.valueOf(proxiesEnabled));
 	}
 
 	public String getHttpProxyHost() {
 	}
 
 	public void setHttpProxyHost(String httpProxyHost) {
	}
	}
	public void setHttpProxyPort(String httpProxyPort) {
	}
	}
	public void setHttpsProxyHost(String httpsProxyHost) {
	}
	}
	public void setHttpsProxyPort(String httpsProxyPort) {
	}
	public String getFtpProxyHost() {
	}
	public void setFtpProxyHost(String ftpProxyHost) {
	}
	public String getFtpProxyPort() {
	}
	public void setFtpProxyPort(String ftpProxyPort) {
	}
	}
	public void setSocksProxyHost(String socksProxyHost) {
	}
	}
	public void setSocksProxyPort(String socksProxyPort) {
	}
	private void setProxySystemProperty(String keyString val) {
		}
		// See SES-1100: Sesame should leave proxy settings alone if not enabled
//		else {
//			setSystemProperty(key, null);
//		}
	}

Get the semicolon-separated list of hostnames starting with given strings, that do not use the proxy settings.
	}

Set the semicolon separated list of hostnames starting with given strings, that do not use the proxy settings.
	public void setNonProxyHostsStarting(String nonProxyHostsStarting) {
		// parse nonproxy hosts
		StringBuilder sysPropBuffer = new StringBuilder();
		if (nonProxyHostsStarting != null) {
			StringTokenizer st = new StringTokenizer(nonProxyHostsStarting";");
			while (st.hasMoreTokens()) {
				sysPropBuffer.append(st.nextToken().trim());
				sysPropBuffer.append('*');
				if (st.hasMoreTokens()) {
					sysPropBuffer.append('|');
				}
			}
		}
		String sysPropValue = null;
		if (sysPropBuffer.length() > 0) {
			sysPropValue = sysPropBuffer.toString();
		}
		// set system properties accordingly
		setProxySystemProperty("http.nonProxyHosts"sysPropValue);
		setProxySystemProperty("ftp.nonProxyHosts"sysPropValue);
	}

(Re-)loads the proxy system properties.
	public void load() throws IOException {
		Properties proxyConfig = ConfigurationUtil.loadConfigurationProperties(null);
		 = ConfigurationUtil.loadConfigurationProperties(proxyConfig);
	}

Saves the currently known settings.
	public void save() throws IOException {
		if(!.isEmpty()) {
			ConfigurationUtil.saveConfigurationProperties(false);
		}
		ConfigurationUtil.saveConfigurationProperties(new File(.getParentFile(), .getName()+".default"), true);
	}
	public void destroy()
	{
		// no-op
	}
	public void init()
	{
		// make sure some system properties are set properly
	}
New to GrepCode? Check out our FAQ X