org.apache.commons.httpclient.params
Class HttpClientParams

java.lang.Object
  extended by org.apache.commons.httpclient.params.DefaultHttpParams
      extended by org.apache.commons.httpclient.params.HttpMethodParams
          extended by org.apache.commons.httpclient.params.HttpClientParams
All Implemented Interfaces:
Serializable, Cloneable, HttpParams

public class HttpClientParams
extends HttpMethodParams

This class represents a collection of HTTP protocol parameters applicable to instances of HttpClient. Protocol parameters may be linked together to form a hierarchy. If a particular parameter value has not been explicitly defined in the collection itself, its value will be drawn from the parent collection of parameters.

Since:
3.0
Version:
$Revision: 354155 $
Author:
Oleg Kalnichevski
See Also:
Serialized Form

Field Summary
static String ALLOW_CIRCULAR_REDIRECTS
          Defines whether circular redirects (redirects to the same location) should be allowed.
static String CONNECTION_MANAGER_CLASS
          Defines the default HTTP connection manager class.
static String CONNECTION_MANAGER_TIMEOUT
          Sets the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.
static String MAX_REDIRECTS
          Defines the maximum number of redirects to be followed.
static String PREEMPTIVE_AUTHENTICATION
          Defines whether authentication should be attempted preemptively.
static String REJECT_RELATIVE_REDIRECT
          Defines whether relative redirects should be rejected.
 
Fields inherited from class org.apache.commons.httpclient.params.HttpMethodParams
BUFFER_WARN_TRIGGER_LIMIT, COOKIE_POLICY, CREDENTIAL_CHARSET, DATE_PATTERNS, HEAD_BODY_CHECK_TIMEOUT, HTTP_CONTENT_CHARSET, HTTP_ELEMENT_CHARSET, MULTIPART_BOUNDARY, PROTOCOL_VERSION, REJECT_HEAD_BODY, RETRY_HANDLER, SINGLE_COOKIE_HEADER, SO_TIMEOUT, STATUS_LINE_GARBAGE_LIMIT, STRICT_TRANSFER_ENCODING, UNAMBIGUOUS_STATUS_LINE, USE_EXPECT_CONTINUE, USER_AGENT, VIRTUAL_HOST, WARN_EXTRA_INPUT
 
Constructor Summary
HttpClientParams()
          Creates a new collection of parameters with the collection returned by DefaultHttpParams.getDefaultParams() as a parent.
HttpClientParams(HttpParams defaults)
          Creates a new collection of parameters with the given parent.
 
Method Summary
 Class getConnectionManagerClass()
          Returns the default HTTP connection manager class.
 long getConnectionManagerTimeout()
          Returns the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.
 boolean isAuthenticationPreemptive()
          Returns true if authentication should be attempted preemptively, false otherwise.
 void makeLenient()
          Makes the HTTP methods attempt to mimic the exact behaviour of commonly used HTTP agents, which many HTTP servers expect, even though such behaviour may violate the HTTP protocol specification (RFC 2616 and other relevant RFCs).
 void makeStrict()
          Makes the HTTP methods strictly follow the HTTP protocol specification (RFC 2616 and other relevant RFCs).
 void setAuthenticationPreemptive(boolean value)
          Sets whether authentication should be attempted preemptively.
 void setConnectionManagerClass(Class clazz)
          Sets HTTP connection manager class to be used der default.
 void setConnectionManagerTimeout(long timeout)
          Sets the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.
 
Methods inherited from class org.apache.commons.httpclient.params.HttpMethodParams
getContentCharset, getCookiePolicy, getCredentialCharset, getHttpElementCharset, getSoTimeout, getVersion, getVirtualHost, setContentCharset, setCookiePolicy, setCredentialCharset, setHttpElementCharset, setSoTimeout, setVersion, setVirtualHost
 
Methods inherited from class org.apache.commons.httpclient.params.DefaultHttpParams
clear, clone, getBooleanParameter, getDefaultParams, getDefaults, getDoubleParameter, getIntParameter, getLongParameter, getParameter, isParameterFalse, isParameterSet, isParameterSetLocally, isParameterTrue, setBooleanParameter, setDefaults, setDoubleParameter, setHttpParamsFactory, setIntParameter, setLongParameter, setParameter, setParameters
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CONNECTION_MANAGER_TIMEOUT

public static final String CONNECTION_MANAGER_TIMEOUT
Sets the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.

This parameter expects a value of type Long.

See Also:
Constant Field Values

CONNECTION_MANAGER_CLASS

public static final String CONNECTION_MANAGER_CLASS
Defines the default HTTP connection manager class.

This parameter expects a value of type Class.

See Also:
Constant Field Values

PREEMPTIVE_AUTHENTICATION

public static final String PREEMPTIVE_AUTHENTICATION
Defines whether authentication should be attempted preemptively.

This parameter expects a value of type Boolean.

See Also:
Constant Field Values

REJECT_RELATIVE_REDIRECT

public static final String REJECT_RELATIVE_REDIRECT
Defines whether relative redirects should be rejected.

This parameter expects a value of type Boolean.

See Also:
Constant Field Values

MAX_REDIRECTS

public static final String MAX_REDIRECTS
Defines the maximum number of redirects to be followed. The limit on number of redirects is intended to prevent infinite loops.

This parameter expects a value of type Integer.

See Also:
Constant Field Values

ALLOW_CIRCULAR_REDIRECTS

public static final String ALLOW_CIRCULAR_REDIRECTS
Defines whether circular redirects (redirects to the same location) should be allowed. The HTTP spec is not sufficiently clear whether circular redirects are permitted, therefore optionally they can be enabled

This parameter expects a value of type Boolean.

See Also:
Constant Field Values
Constructor Detail

HttpClientParams

public HttpClientParams()
Creates a new collection of parameters with the collection returned by DefaultHttpParams.getDefaultParams() as a parent. The collection will defer to its parent for a default value if a particular parameter is not explicitly set in the collection itself.

See Also:
DefaultHttpParams.getDefaultParams()

HttpClientParams

public HttpClientParams(HttpParams defaults)
Creates a new collection of parameters with the given parent. The collection will defer to its parent for a default value if a particular parameter is not explicitly set in the collection itself.

Parameters:
defaults - the parent collection to defer to, if a parameter is not explictly set in the collection itself.
See Also:
DefaultHttpParams.getDefaultParams()
Method Detail

getConnectionManagerTimeout

public long getConnectionManagerTimeout()
Returns the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.

Returns:
timeout in milliseconds.

setConnectionManagerTimeout

public void setConnectionManagerTimeout(long timeout)
Sets the timeout in milliseconds used when retrieving an HTTP connection from the HTTP connection manager.

Parameters:
timeout - the timeout in milliseconds

getConnectionManagerClass

public Class getConnectionManagerClass()
Returns the default HTTP connection manager class.

Returns:
HTTP connection manager factory class.

setConnectionManagerClass

public void setConnectionManagerClass(Class clazz)
Sets HTTP connection manager class to be used der default.

Parameters:
clazz - HTTP connection manager factory class.

isAuthenticationPreemptive

public boolean isAuthenticationPreemptive()
Returns true if authentication should be attempted preemptively, false otherwise.

Returns:
true if authentication should be attempted preemptively, false otherwise.

setAuthenticationPreemptive

public void setAuthenticationPreemptive(boolean value)
Sets whether authentication should be attempted preemptively.

Parameters:
value - true if authentication should be attempted preemptively, false otherwise.

makeStrict

public void makeStrict()
Makes the HTTP methods strictly follow the HTTP protocol specification (RFC 2616 and other relevant RFCs). It must be noted that popular HTTP agents have different degree of HTTP protocol compliance and some HTTP serves are programmed to expect the behaviour that does not strictly adhere to the HTTP specification.

Overrides:
makeStrict in class HttpMethodParams

makeLenient

public void makeLenient()
Makes the HTTP methods attempt to mimic the exact behaviour of commonly used HTTP agents, which many HTTP servers expect, even though such behaviour may violate the HTTP protocol specification (RFC 2616 and other relevant RFCs).

Overrides:
makeLenient in class HttpMethodParams


Copyright (c) 1999-2005 - Apache Software Foundation