Class CookieFilter
- java.lang.Object
-
- org.forgerock.openig.filter.CookieFilter
-
- All Implemented Interfaces:
Filter
public class CookieFilter extends Object implements Filter
Suppresses, relays and manages cookies. The names of filtered cookies are stored in one of three action set variables:suppressed,relayedandmanaged. If a cookie is not found in any of the action sets, then a default action is selected.The default action is controlled by setting the
defaultActionfield. The default action at initialization is to manage all cookies. In the event a cookie appears in more than one action set, then it will be selected in order of precedence: managed, suppressed, relayed.Managed cookies are intercepted by the cookie filter itself and stored in the request
Sessionobject. The defaultpolicyis to accept all incoming cookies, but can be changed to others as appropriate.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCookieFilter.ActionAction to be performed for a cookie.static classCookieFilter.HeapletCreates and initializes a cookie filter in a heap environment.
-
Constructor Summary
Constructors Constructor Description CookieFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Promise<Response,NeverThrowsException>filter(Context context, Request request, Handler next)Filters the request and/or response of an exchange.CaseInsensitiveSetgetManaged()Returns the set of cookie names that will be managed.CaseInsensitiveSetgetRelayed()Returns the set of cookie names that will be relayed (Cookie transmitted from the client to the next handler in the context of a request, and Set-Cookie2 transmitted from the next handler to the client in the context of a response).CaseInsensitiveSetgetSuppressed()Returns the set of cookie names that will be suppressed from the request and from the response.voidsetDefaultAction(CookieFilter.Action defaultAction)Set the action to perform for cookies that do not match an action set.voidsetPolicy(CookiePolicy policy)Set the policy for managed cookies.
-
-
-
Method Detail
-
setDefaultAction
public void setDefaultAction(CookieFilter.Action defaultAction)
Set the action to perform for cookies that do not match an action set. Default:CookieFilter.Action.MANAGE.- Parameters:
defaultAction- the action to perform for cookies that do not match an action set.
-
setPolicy
public void setPolicy(CookiePolicy policy)
Set the policy for managed cookies. Default: accept all cookies (CookiePolicy.ACCEPT_ALL).- Parameters:
policy- the policy for managed cookies.
-
getSuppressed
public CaseInsensitiveSet getSuppressed()
Returns the set of cookie names that will be suppressed from the request and from the response.- Returns:
- the set of suppressed cookie identifiers.
-
getRelayed
public CaseInsensitiveSet getRelayed()
Returns the set of cookie names that will be relayed (Cookie transmitted from the client to the next handler in the context of a request, and Set-Cookie2 transmitted from the next handler to the client in the context of a response).- Returns:
- the set of relayed cookie identifiers.
-
getManaged
public CaseInsensitiveSet getManaged()
Returns the set of cookie names that will be managed.- Returns:
- the set of managed cookie identifiers.
-
filter
public Promise<Response,NeverThrowsException> filter(Context context, Request request, Handler next)
Description copied from interface:FilterFilters the request and/or response of an exchange. To pass the request to the next filter or handler in the chain, the filter callsnext.handle(context, request).This method may elect not to pass the request to the next filter or handler, and instead handle the request itself. It can achieve this by merely avoiding a call to
next.handle(context, request)and creating its own response object. The filter is also at liberty to replace a response with another of its own by intercepting the response returned by the next handler.
-
-