public abstract class CookieHandler extends Object
A system-wide CookieHandler that to used by the HTTP protocol handler can be registered by doing a CookieHandler.setDefault(CookieHandler). The currently registered CookieHandler can be retrieved by calling CookieHandler.getDefault(). For more information on HTTP state management, see RFC 2965: HTTP State Management Mechanism
Constructor and Description |
---|
CookieHandler() |
Modifier and Type | Method and Description |
---|---|
abstract Map<String,List<String>> |
get(URI uri,
Map<String,List<String>> requestHeaders)
Gets all the applicable cookies from a cookie cache for the
specified uri in the request header.
|
static CookieHandler |
getDefault()
Gets the system-wide cookie handler.
|
abstract void |
put(URI uri,
Map<String,List<String>> responseHeaders)
Sets all the applicable cookies, examples are response header
fields that are named Set-Cookie2, present in the response
headers into a cookie cache.
|
static void |
setDefault(CookieHandler cHandler)
Sets (or unsets) the system-wide cookie handler.
|
public static CookieHandler getDefault()
SecurityException
- If a security manager has been installed and it denies
NetPermission
("getCookieHandler")
setDefault(CookieHandler)
public static void setDefault(CookieHandler cHandler)
cHandler
- The HTTP cookie handler, or
null
to unset.SecurityException
- If a security manager has been installed and it denies
NetPermission
("setCookieHandler")
getDefault()
public abstract Map<String,List<String>> get(URI uri, Map<String,List<String>> requestHeaders) throws IOException
The URI
passed as an argument specifies the intended use for
the cookies. In particular the scheme should reflect whether the cookies
will be sent over http, https or used in another context like javascript.
The host part should reflect either the destination of the cookies or
their origin in the case of javascript.
It is up to the implementation to take into account the URI
and
the cookies attributes and security settings to determine which ones
should be returned.
HTTP protocol implementers should make sure that this method is called after all request headers related to choosing cookies are added, and before the request is sent.
uri
- a URI
representing the intended use for the
cookiesrequestHeaders
- - a Map from request header
field names to lists of field values representing
the current request headersIOException
- if an I/O error occursIllegalArgumentException
- if either argument is nullput(URI, Map)
public abstract void put(URI uri, Map<String,List<String>> responseHeaders) throws IOException
uri
- a URI
where the cookies come fromresponseHeaders
- an immutable map from field names to
lists of field values representing the response
header fields returnedIOException
- if an I/O error occursIllegalArgumentException
- if either argument is nullget(URI, Map)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2019, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.