org.apache.tools.ant.taskdefs.optional.net

Class SetProxy


public class SetProxy
extends Task

Sets Java's web proxy properties, so that tasks and code run in the same JVM can have through-the-firewall access to remote web sites, and remote ftp sites. You can nominate an http and ftp proxy, or a socks server, reset the server settings, or do nothing at all.

Examples

<setproxy/>
do nothing
<setproxy proxyhost="firewall"/>
set the proxy to firewall:80
<setproxy proxyhost="firewall" proxyport="81"/>
set the proxy to firewall:81
<setproxy proxyhost=""/>
stop using the http proxy; don't change the socks settings
<setproxy socksproxyhost="socksy"/>
use socks via socksy:1080
<setproxy socksproxyhost=""/>
stop using the socks server.

You can set a username and password for http with the proxyHost and proxyPassword attributes. On Java1.4 and above these can also be used against SOCKS5 servers.

Since:
Ant 1.5

See Also:
java 1.4 network property list

Field Summary

protected String
proxyHost
proxy details
protected int
proxyPort
name of proxy port

Fields inherited from class org.apache.tools.ant.Task

description, location, target, taskName, taskType, wrapper

Fields inherited from class org.apache.tools.ant.ProjectComponent

project

Method Summary

void
applyWebProxySettings()
if the proxy port and host settings are not null, then the settings get applied these settings last beyond the life of the object and apply to all network connections Relevant docs: buglist #4183340
void
execute()
Does the work.
protected boolean
legacyResetProxySettingsCall(boolean setProxy)
make a call to sun.net.www.http.HttpClient.resetProperties(); this is only needed for java 1.1; reflection is used to stop the compiler whining, and in case cleanroom JVMs dont have the class.
void
setNonProxyHosts(String nonProxyHosts)
A list of hosts to bypass the proxy on.
void
setProxyHost(String hostname)
the HTTP/ftp proxy host.
void
setProxyPassword(String proxyPassword)
Set the password for the proxy.
void
setProxyPort(int port)
the HTTP/ftp proxy port number; default is 80
void
setProxyUser(String proxyUser)
set the proxy user.
void
setSocksProxyHost(String host)
The name of a Socks server.
void
setSocksProxyPort(int port)
Set the ProxyPort for socks connections.

Methods inherited from class org.apache.tools.ant.Task

execute, getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType

Methods inherited from class org.apache.tools.ant.ProjectComponent

getProject, log, log, setProject

Field Details

proxyHost

protected String proxyHost
proxy details


proxyPort

protected int proxyPort
name of proxy port

Method Details

applyWebProxySettings

public void applyWebProxySettings()
if the proxy port and host settings are not null, then the settings get applied these settings last beyond the life of the object and apply to all network connections Relevant docs: buglist #4183340


execute

public void execute()
            throws BuildException
Does the work.
Overrides:
execute in interface Task

Throws:
BuildException - thrown in unrecoverable error.


legacyResetProxySettingsCall

protected boolean legacyResetProxySettingsCall(boolean setProxy)
make a call to sun.net.www.http.HttpClient.resetProperties(); this is only needed for java 1.1; reflection is used to stop the compiler whining, and in case cleanroom JVMs dont have the class.

Returns:
true if we did something


setNonProxyHosts

public void setNonProxyHosts(String nonProxyHosts)
A list of hosts to bypass the proxy on. These should be separated with the vertical bar character '|'. Only in Java 1.4 does ftp use this list. e.g. fozbot.corp.sun.com|*.eng.sun.com

Parameters:
nonProxyHosts - lists of hosts to talk direct to


setProxyHost

public void setProxyHost(String hostname)
the HTTP/ftp proxy host. Set this to "" for the http proxy option to be disabled

Parameters:
hostname - the new proxy hostname


setProxyPassword

public void setProxyPassword(String proxyPassword)
Set the password for the proxy. Used only if the proxyUser is set.

Parameters:
proxyPassword - password to go with the username

Since:
Ant1.6


setProxyPort

public void setProxyPort(int port)
the HTTP/ftp proxy port number; default is 80

Parameters:
port - port number of the proxy


setProxyUser

public void setProxyUser(String proxyUser)
set the proxy user. Probably requires a password to accompany this setting. Default=""

Parameters:
proxyUser - username

Since:
Ant1.6


setSocksProxyHost

public void setSocksProxyHost(String host)
The name of a Socks server. Set to "" to turn socks proxying off.

Parameters:
host - The new SocksProxyHost value


setSocksProxyPort

public void setSocksProxyPort(int port)
Set the ProxyPort for socks connections. The default value is 1080

Parameters:
port - The new SocksProxyPort value


Copyright B) 2000-2005 Apache Software Foundation. All Rights Reserved.