org.apache.webdav.lib
Class WebdavSession
java.lang.Object
org.apache.webdav.lib.WebdavSession
public abstract class WebdavSession
extends java.lang.Object
This WebdavSession class is for the session management of WebDAV clients.
This class saves and restores the requested client.
Although this class is thread safe, it should only be accessed by one
concurrent thread, since the underlying protocol, HTTP, is not multiplexed.
If simultaneous operations are needed, it is recommended to create
additional threads, each having its own associated WebDAV client.
Clients that use persistent connections SHOULD limit the number of
simultaneous connections that they maintain to a given server. A
single-user client SHOULD NOT maintain more than 2 connections with
any server or proxy. A proxy SHOULD use up to 2*N connections to
another server or proxy, where N is the number of simultaneously
active users. These guidelines are intended to improve HTTP response
times and avoid congestion.
protected HttpClient | client - The Http client instance.
|
protected int | debug - Debug level.
|
protected Credentials | hostCredentials - Credentials to use for authentication
|
protected Credentials | proxyCredentials - Credentials to use for an authenticating proxy
|
protected String | proxyHost - The hostname to use for the proxy, if any
|
protected int | proxyPort - Port number to use for proxy, if any
|
void | closeSession() - Close an session and delete the connection information.
|
void | closeSession(HttpClient client) - Replaced by closeSession()
|
HttpClient | getSessionInstance(HttpURL httpURL) - Get a
HttpClient instance.
|
HttpClient | getSessionInstance(HttpURL httpURL, boolean reset) - Get a
HttpClient instance.
|
void | setCredentials(Credentials credentials) - Set credentials for authentication.
|
void | setDebug(int debug) - Set debug level.
|
void | setProxy(String host, int port) - Set proxy info, to use proxying.
|
void | setProxyCredentials(Credentials credentials) - Set credentials for authenticating against a proxy.
|
client
protected HttpClient client
The Http client instance.
debug
protected int debug
Debug level.
hostCredentials
protected Credentials hostCredentials
Credentials to use for authentication
proxyCredentials
protected Credentials proxyCredentials
Credentials to use for an authenticating proxy
proxyHost
protected String proxyHost
The hostname to use for the proxy, if any
proxyPort
protected int proxyPort
Port number to use for proxy, if any
WebdavSession
public WebdavSession()
Default constructor.
closeSession
public void closeSession()
throws IOException
Close an session and delete the connection information.
closeSession
public void closeSession(HttpClient client)
throws IOException
Replaced by closeSession()
Close an session and delete the connection information.
client
- The HttpClient instance.
getSessionInstance
public HttpClient getSessionInstance(HttpURL httpURL)
throws IOException
Get a HttpClient
instance.
This method returns a new client instance for the first time.
And it is saved util it's closed or reset.
httpURL
- The http URL to connect. only used the authority part.
- An instance of
HttpClient
.
getSessionInstance
public HttpClient getSessionInstance(HttpURL httpURL,
boolean reset)
throws IOException
Get a HttpClient
instance.
This method returns a new client instance, when reset is true.
httpURL
- The http URL to connect. only used the authority part.reset
- The reset flag to represent whether the saved information
is used or not.
- An instance of
HttpClient
.
setCredentials
public void setCredentials(Credentials credentials)
Set credentials for authentication.
credentials
- The credentials to use for authentication.
setDebug
public void setDebug(int debug)
Set debug level.
setProxy
public void setProxy(String host,
int port)
Set proxy info, to use proxying.
setProxyCredentials
public void setProxyCredentials(Credentials credentials)
Set credentials for authenticating against a proxy.
credentials
- The credentials to use for authentication.