SetProxy (Apache Ant API)

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


java.lang.Object

  |

  +--org.apache.tools.ant.ProjectComponent

        |

        +--org.apache.tools.ant.Task

              |

              +--org.apache.tools.ant.taskdefs.optional.net.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

Since:
Ant 1.5
Author:
Steve Loughran
See Also:
java 1.4 network property list

Field Summary
protected  java.lang.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
 
Constructor Summary
SetProxy()
           
 
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(java.lang.String nonProxyHosts)
          A list of hosts to bypass the proxy on.
 void setProxyHost(java.lang.String hostname)
          the HTTP/ftp proxy host.
 void setProxyPort(int port)
          the HTTP/ftp proxy port number; default is 80
 void setSocksProxyHost(java.lang.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
getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, handleErrorOutput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

proxyHost


protected java.lang.String proxyHost
proxy details


proxyPort


protected int proxyPort
name of proxy port

Constructor Detail

SetProxy


public SetProxy()
Method Detail

setProxyHost


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

Parameters:
hostname - the new proxy hostname

setProxyPort


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

Parameters:
port - port number of the proxy

setSocksProxyHost


public void setSocksProxyHost(java.lang.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

setNonProxyHosts


public void setNonProxyHosts(java.lang.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

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

Returns:
true if the settings were applied

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

execute


public void execute()
             throws BuildException
Does the work.

Overrides:
execute in class Task
Throws:
BuildException - thrown in unrecoverable error.


Copyright 2000-2002 Apache Software Foundation. All Rights Reserved.