Skip to content

Instantly share code, notes, and snippets.

@equinoxel
Created October 24, 2016 13:18
Show Gist options
  • Save equinoxel/51772d3acc3ba42f47a8805ab708ae97 to your computer and use it in GitHub Desktop.
Save equinoxel/51772d3acc3ba42f47a8805ab708ae97 to your computer and use it in GitHub Desktop.
package me.play.util;
import static java.lang.System.getProperty;
import static java.lang.System.setProperty;
import static java.util.logging.Level.SEVERE;
import static java.util.logging.Logger.getLogger;
import java.net.Authenticator;
import java.net.InetAddress;
import java.net.PasswordAuthentication;
import java.net.UnknownHostException;
/**
* Call <code>#authenticate()</code>once per app life cycle…
*
* @author Octavian Theodor NITA (mnothro@yahoo.com)
* @version 1.0, Sep 12, 2013
*/
public class ProxyUtils {
public static void authenticate() {
// A sort of whitelist
try {
if (!InetAddress.getLocalHost().toString().toLowerCase().contains("whitelisted")) {
return;
}
} catch (UnknownHostException e) {
getLogger(ProxyUtils.class.getName()).log(SEVERE, null, e);
return;
}
// Set system properties
setProperty("http.proxyHost", "192.168.0.110");
setProperty("http.proxyPort", "88");
setProperty("http.proxyUser", "user");
setProperty("http.proxyPassword", "pass");
setProperty("https.proxyHost", getProperty("http.proxyHost"));
setProperty("https.proxyPort", getProperty("http.proxyPort"));
setProperty("https.proxyUser", getProperty("http.proxyUser"));
setProperty("https.proxyPassword", getProperty("http.proxyPassword"));
// Set the authenticator
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("user", "pass".toCharArray());
}
});
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment