package org.apache.maven.wagon.proxy;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* 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.
*/
import org.apache.maven.wagon.WagonConstants;
import java.io.Serializable;
Contains set of properties used by Wagon
objects
while connection to the repository must go thru a proxy server.
Author: Michal Maczka @todo Propose standard types of proxy servers (e.g. SOCKSv4),
which can be shared between wagon api and providers
/**
* Contains set of properties used by <code>Wagon</code> objects
* while connection to the repository must go thru a proxy server.
*
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
*
* @todo Propose standard types of proxy servers (e.g. <i>SOCKSv4</i>),
* which can be shared between wagon api and providers
*/
public class ProxyInfo
implements Serializable
{
public static final String PROXY_SOCKS5 = "SOCKS_5";
public static final String PROXY_SOCKS4 = "SOCKS4";
public static final String PROXY_HTTP = "HTTP";
Proxy server host
/**
* Proxy server host
*/
private String host = null;
Username used to access the proxy server
/**
* Username used to access the proxy server
*/
private String userName = null;
Password associated with the proxy server
/**
* Password associated with the proxy server
*/
private String password = null;
Proxy server port
/**
* Proxy server port
*/
private int port = WagonConstants.UNKNOWN_PORT;
Type of the proxy
/**
* Type of the proxy
*/
private String type = null;
The non-proxy hosts. Follows Java system property format: *.foo.com|localhost
.
/**
* The non-proxy hosts. Follows Java system property format: <code>*.foo.com|localhost</code>.
*/
private String nonProxyHosts;
For NTLM proxies, specifies the NTLM host.
/**
* For NTLM proxies, specifies the NTLM host.
*/
private String ntlmHost;
For NTLM proxies, specifies the NTLM domain.
/**
* For NTLM proxies, specifies the NTLM domain.
*/
private String ntlmDomain;
Return proxy server host name.
Returns: proxy server host name
/**
* Return proxy server host name.
*
* @return proxy server host name
*/
public String getHost()
{
return host;
}
Set proxy host name.
Params: - host – proxy server host name
/**
* Set proxy host name.
*
* @param host proxy server host name
*/
public void setHost( final String host )
{
this.host = host;
}
Get user's password used to login to proxy server.
Returns: user's password at proxy host
/**
* Get user's password used to login to proxy server.
*
* @return user's password at proxy host
*/
public String getPassword()
{
return password;
}
Set the user's password for the proxy server.
Params: - password – password to use to login to a proxy server
/**
* Set the user's password for the proxy server.
*
* @param password password to use to login to a proxy server
*/
public void setPassword( final String password )
{
this.password = password;
}
Get the proxy port.
Returns: proxy server port
/**
* Get the proxy port.
*
* @return proxy server port
*/
public int getPort()
{
return port;
}
Set the proxy port.
Params: - port – proxy server port
/**
* Set the proxy port.
*
* @param port proxy server port
*/
public void setPort( final int port )
{
this.port = port;
}
Get the proxy username.
Returns: username for the proxy server
/**
* Get the proxy username.
*
* @return username for the proxy server
*/
public String getUserName()
{
return userName;
}
Set the proxy username.
Params: - userName – username for the proxy server
/**
* Set the proxy username.
*
* @param userName username for the proxy server
*/
public void setUserName( final String userName )
{
this.userName = userName;
}
Get the type of the proxy server.
Returns: the type of the proxy server
/**
* Get the type of the proxy server.
*
* @return the type of the proxy server
*/
public String getType()
{
return type;
}
Params: - type – the type of the proxy server like SOCKSv4
/**
* @param type the type of the proxy server like <i>SOCKSv4</i>
*/
public void setType( final String type )
{
this.type = type;
}
public String getNonProxyHosts()
{
return nonProxyHosts;
}
public void setNonProxyHosts( String nonProxyHosts )
{
this.nonProxyHosts = nonProxyHosts;
}
public String getNtlmHost()
{
return ntlmHost;
}
public void setNtlmHost( String ntlmHost )
{
this.ntlmHost = ntlmHost;
}
public void setNtlmDomain( String ntlmDomain )
{
this.ntlmDomain = ntlmDomain;
}
public String getNtlmDomain()
{
return ntlmDomain;
}
@Override
public String toString()
{
return "ProxyInfo{" + "host='" + host + '\'' + ", userName='" + userName + '\'' + ", port=" + port + ", type='"
+ type + '\'' + ", nonProxyHosts='" + nonProxyHosts + '\'' + '}';
}
}