blob: c545c4b45d15a5288abe7f690c795f6f73f38ab0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
package config;
import java.io.IOException;
import java.net.ProxySelector;
import org.apache.log4j.Logger;
import com.btr.proxy.search.ProxySearch;
import com.btr.proxy.search.wpad.WpadProxySearchStrategy;
import com.btr.proxy.util.ProxyException;
/**
* Configures the proxy
*
* @author Jonathan Bauer
*/
public class ConfigProxy {
/**
* Logger for this class
*/
private final static Logger LOGGER = Logger.getLogger(ConfigProxy.class);
/**
* Initialization method.
*/
public static void init() throws IOException {
// try to find local proxy settings
ProxySearch proxySearch = ProxySearch.getDefaultProxySearch();
ProxySelector myProxySelector = proxySearch.getProxySelector();
if (myProxySelector == null) {
// didn't work, try WPAD detection
LOGGER.error("No suitable proxy settings found, trying WPAD...");
WpadProxySearchStrategy ss = new WpadProxySearchStrategy();
try {
myProxySelector = ss.getProxySelector();
} catch (ProxyException e) {
LOGGER.error("WPAD proxy error, see trace: ", e);
}
}
// final check to see if WPAD actually worked
if (myProxySelector != null) {
LOGGER.debug("Proxy initialised.");
ProxySelector.setDefault(myProxySelector);
} else {
LOGGER.error("Could not find a suitable proxy!");
}
}
}
|