Package org.jsoup.helper
Class HttpConnection.Base<T extends Connection.Base>
- java.lang.Object
-
- org.jsoup.helper.HttpConnection.Base<T>
-
- All Implemented Interfaces:
Connection.Base<T>
- Direct Known Subclasses:
HttpConnection.Request,HttpConnection.Response
- Enclosing class:
- HttpConnection
private abstract static class HttpConnection.Base<T extends Connection.Base> extends java.lang.Object implements Connection.Base<T>
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.Map<java.lang.String,java.lang.String>cookies(package private) java.util.Map<java.lang.String,java.util.List<java.lang.String>>headers(package private) Connection.Methodmethod(package private) java.net.URLurl
-
Constructor Summary
Constructors Modifier Constructor Description privateBase()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TaddHeader(java.lang.String name, java.lang.String value)Add a header.java.lang.Stringcookie(java.lang.String name)Get a cookie value by name from this request/response.Tcookie(java.lang.String name, java.lang.String value)Set a cookie in this request/response.java.util.Map<java.lang.String,java.lang.String>cookies()Retrieve all of the request/response cookies as a mapprivate static java.lang.StringfixHeaderEncoding(java.lang.String val)private java.util.List<java.lang.String>getHeadersCaseInsensitive(java.lang.String name)booleanhasCookie(java.lang.String name)Check if a cookie is presentbooleanhasHeader(java.lang.String name)Check if a header is presentbooleanhasHeaderWithValue(java.lang.String name, java.lang.String value)Test if the request has a header with this value (case insensitive).java.lang.Stringheader(java.lang.String name)Get the value of a header.Theader(java.lang.String name, java.lang.String value)Set a header.java.util.Map<java.lang.String,java.lang.String>headers()Retrieve all of the request/response header names and corresponding values as a map.java.util.List<java.lang.String>headers(java.lang.String name)Get the values of a header.private static booleanlooksLikeUtf8(byte[] input)Connection.Methodmethod()Get the request methodTmethod(Connection.Method method)Set the request methodjava.util.Map<java.lang.String,java.util.List<java.lang.String>>multiHeaders()Retreive all of the headers, keyed by the header name, and with a list of values per header.TremoveCookie(java.lang.String name)Remove a cookie by nameTremoveHeader(java.lang.String name)Remove headers by name.private java.util.Map.Entry<java.lang.String,java.util.List<java.lang.String>>scanHeaders(java.lang.String name)java.net.URLurl()Get the URLTurl(java.net.URL url)Set the URL
-
-
-
Field Detail
-
url
java.net.URL url
-
method
Connection.Method method
-
headers
java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers
-
cookies
java.util.Map<java.lang.String,java.lang.String> cookies
-
-
Method Detail
-
url
public java.net.URL url()
Description copied from interface:Connection.BaseGet the URL- Specified by:
urlin interfaceConnection.Base<T extends Connection.Base>- Returns:
- URL
-
url
public T url(java.net.URL url)
Description copied from interface:Connection.BaseSet the URL- Specified by:
urlin interfaceConnection.Base<T extends Connection.Base>- Parameters:
url- new URL- Returns:
- this, for chaining
-
method
public Connection.Method method()
Description copied from interface:Connection.BaseGet the request method- Specified by:
methodin interfaceConnection.Base<T extends Connection.Base>- Returns:
- method
-
method
public T method(Connection.Method method)
Description copied from interface:Connection.BaseSet the request method- Specified by:
methodin interfaceConnection.Base<T extends Connection.Base>- Parameters:
method- new method- Returns:
- this, for chaining
-
header
public java.lang.String header(java.lang.String name)
Description copied from interface:Connection.BaseGet the value of a header. If there is more than one header value with the same name, the headers are returned comma seperated, per rfc2616-sec4.Header names are case insensitive.
- Specified by:
headerin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of header (case insensitive)- Returns:
- value of header, or null if not set.
- See Also:
Connection.Base.hasHeader(String),Connection.Base.cookie(String)
-
addHeader
public T addHeader(java.lang.String name, java.lang.String value)
Description copied from interface:Connection.BaseAdd a header. The header will be added regardless of whether a header with the same name already exists.- Specified by:
addHeaderin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- Name of new headervalue- Value of new header- Returns:
- this, for chaining
-
headers
public java.util.List<java.lang.String> headers(java.lang.String name)
Description copied from interface:Connection.BaseGet the values of a header.- Specified by:
headersin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- header name, case insensitive.- Returns:
- a list of values for this header, or an empty list if not set.
-
fixHeaderEncoding
private static java.lang.String fixHeaderEncoding(java.lang.String val)
-
looksLikeUtf8
private static boolean looksLikeUtf8(byte[] input)
-
header
public T header(java.lang.String name, java.lang.String value)
Description copied from interface:Connection.BaseSet a header. This method will overwrite any existing header with the same case insensitive name. (If there is more than one value for this header, this method will update the first matching header.- Specified by:
headerin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- Name of headervalue- Value of header- Returns:
- this, for chaining
- See Also:
Connection.Base.addHeader(String, String)
-
hasHeader
public boolean hasHeader(java.lang.String name)
Description copied from interface:Connection.BaseCheck if a header is present- Specified by:
hasHeaderin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of header (case insensitive)- Returns:
- if the header is present in this request/response
-
hasHeaderWithValue
public boolean hasHeaderWithValue(java.lang.String name, java.lang.String value)Test if the request has a header with this value (case insensitive).- Specified by:
hasHeaderWithValuein interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- header name (case insensitive)value- value (case insensitive)- Returns:
- if the header and value pair are set in this req/res
-
removeHeader
public T removeHeader(java.lang.String name)
Description copied from interface:Connection.BaseRemove headers by name. If there is more than one header with this name, they will all be removed.- Specified by:
removeHeaderin interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of header to remove (case insensitive)- Returns:
- this, for chaining
-
headers
public java.util.Map<java.lang.String,java.lang.String> headers()
Description copied from interface:Connection.BaseRetrieve all of the request/response header names and corresponding values as a map. For headers with multiple values, only the first header is returned.Note that this is a view of the headers only, and changes made to this map will not be reflected in the request/response object.
- Specified by:
headersin interfaceConnection.Base<T extends Connection.Base>- Returns:
- headers
- See Also:
Connection.Base.multiHeaders()
-
multiHeaders
public java.util.Map<java.lang.String,java.util.List<java.lang.String>> multiHeaders()
Description copied from interface:Connection.BaseRetreive all of the headers, keyed by the header name, and with a list of values per header.- Specified by:
multiHeadersin interfaceConnection.Base<T extends Connection.Base>- Returns:
- a list of multiple values per header.
-
getHeadersCaseInsensitive
private java.util.List<java.lang.String> getHeadersCaseInsensitive(java.lang.String name)
-
scanHeaders
private java.util.Map.Entry<java.lang.String,java.util.List<java.lang.String>> scanHeaders(java.lang.String name)
-
cookie
public java.lang.String cookie(java.lang.String name)
Description copied from interface:Connection.BaseGet a cookie value by name from this request/response.Response objects have a simplified cookie model. Each cookie set in the response is added to the response object's cookie key=value map. The cookie's path, domain, and expiry date are ignored.
- Specified by:
cookiein interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of cookie to retrieve.- Returns:
- value of cookie, or null if not set
-
cookie
public T cookie(java.lang.String name, java.lang.String value)
Description copied from interface:Connection.BaseSet a cookie in this request/response.- Specified by:
cookiein interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of cookievalue- value of cookie- Returns:
- this, for chaining
-
hasCookie
public boolean hasCookie(java.lang.String name)
Description copied from interface:Connection.BaseCheck if a cookie is present- Specified by:
hasCookiein interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of cookie- Returns:
- if the cookie is present in this request/response
-
removeCookie
public T removeCookie(java.lang.String name)
Description copied from interface:Connection.BaseRemove a cookie by name- Specified by:
removeCookiein interfaceConnection.Base<T extends Connection.Base>- Parameters:
name- name of cookie to remove- Returns:
- this, for chaining
-
cookies
public java.util.Map<java.lang.String,java.lang.String> cookies()
Description copied from interface:Connection.BaseRetrieve all of the request/response cookies as a map- Specified by:
cookiesin interfaceConnection.Base<T extends Connection.Base>- Returns:
- cookies
-
-