Package jodd.http
Class HttpSession
- java.lang.Object
-
- jodd.http.HttpSession
-
public class HttpSession extends java.lang.ObjectEmulates HTTP session and persist cookies between requests.
-
-
Field Summary
Fields Modifier and Type Field Description protected booleancatchTransportExceptionsprotected HttpMultiMap<Cookie>cookiesprotected HeadersMultiMapdefaultHeadersprotected longelapsedTimeprotected booleanhandleRedirectsprotected HttpConnectionProviderhttpConnectionProviderprotected HttpRequesthttpRequestprotected HttpResponsehttpResponseprotected booleankeepAlive
-
Constructor Summary
Constructors Constructor Description HttpSession()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected HttpResponse_sendRequest(HttpRequest httpRequest, HttpResponse previousResponse)Opens connection and sends a previous response.protected voidaddCookies(HttpRequest httpRequest)Add cookies to the request.protected voidaddDefaultHeaders(HttpRequest httpRequest)Add default headers to the request.voidclearCookies()Deletes all cookies.voidclose()Closes session explicitly, needed when keep-alive connection is used.longgetElapsedTime()Returns elapsed time of lastsendRequest(HttpRequest)in milliseconds.HttpRequestgetHttpRequest()Returns last used request.HttpResponsegetHttpResponse()Returns last receivedHTTP responseobject.java.lang.StringgetPage()Returns last response HTML page.booleanisKeepAlive()Returnstrueif keep alive is used.protected voidreadCookies(HttpResponse httpResponse)Reads cookies from response and adds to cookies list.HttpResponsesendRequest(HttpRequest httpRequest)Sends new request using a session.HttpSessionsetCatchTransportExceptions(boolean catchTransportExceptions)Defines if transport exceptions should be thrown.HttpSessionsetDefaultHeader(java.lang.String name, java.lang.String value)Adds default header to all requests.HttpSessionsetHandleRedirects(boolean handleRedirects)Handles redirects by default.HttpSessionsetHttpConnectionProvider(HttpConnectionProvider httpConnectionProvider)DefinesHttpConnectionProviderfor this session.HttpSessionsetKeepAlive(boolean keepAlive)Defines that persistent HTTP connection should be used.HttpSessionsetProxyInfo(ProxyInfo proxyInfo)Defines proxy for a session
-
-
-
Field Detail
-
httpConnectionProvider
protected HttpConnectionProvider httpConnectionProvider
-
httpRequest
protected HttpRequest httpRequest
-
httpResponse
protected HttpResponse httpResponse
-
cookies
protected HttpMultiMap<Cookie> cookies
-
defaultHeaders
protected HeadersMultiMap defaultHeaders
-
keepAlive
protected boolean keepAlive
-
elapsedTime
protected long elapsedTime
-
catchTransportExceptions
protected boolean catchTransportExceptions
-
handleRedirects
protected boolean handleRedirects
-
-
Method Detail
-
isKeepAlive
public boolean isKeepAlive()
Returnstrueif keep alive is used.
-
setKeepAlive
public HttpSession setKeepAlive(boolean keepAlive)
Defines that persistent HTTP connection should be used.
-
setCatchTransportExceptions
public HttpSession setCatchTransportExceptions(boolean catchTransportExceptions)
Defines if transport exceptions should be thrown.
-
setProxyInfo
public HttpSession setProxyInfo(ProxyInfo proxyInfo)
Defines proxy for a session
-
setHttpConnectionProvider
public HttpSession setHttpConnectionProvider(HttpConnectionProvider httpConnectionProvider)
DefinesHttpConnectionProviderfor this session. Resets the previous proxy definition, if set.
-
setDefaultHeader
public HttpSession setDefaultHeader(java.lang.String name, java.lang.String value)
Adds default header to all requests.
-
setHandleRedirects
public HttpSession setHandleRedirects(boolean handleRedirects)
Handles redirects by default.
-
getHttpRequest
public HttpRequest getHttpRequest()
Returns last used request.
-
getHttpResponse
public HttpResponse getHttpResponse()
Returns last receivedHTTP responseobject.
-
getPage
public java.lang.String getPage()
Returns last response HTML page.
-
sendRequest
public HttpResponse sendRequest(HttpRequest httpRequest)
Sends new request using a session. Before sending, all session cookies are added to the request. After sending, the cookies are read from the response. Moreover, status codes 301 and 302 are automatically handled. Returns very last response.
-
_sendRequest
protected HttpResponse _sendRequest(HttpRequest httpRequest, HttpResponse previousResponse)
Opens connection and sends a previous response.
-
addDefaultHeaders
protected void addDefaultHeaders(HttpRequest httpRequest)
Add default headers to the request. If request already has a header set, default header will be ignored.
-
getElapsedTime
public long getElapsedTime()
Returns elapsed time of lastsendRequest(HttpRequest)in milliseconds.
-
close
public void close()
Closes session explicitly, needed when keep-alive connection is used.
-
clearCookies
public void clearCookies()
Deletes all cookies.
-
readCookies
protected void readCookies(HttpResponse httpResponse)
Reads cookies from response and adds to cookies list.
-
addCookies
protected void addCookies(HttpRequest httpRequest)
Add cookies to the request.
-
-