- Type Parameters:
C
- the type of Credentials to be authenticated
P
- the type of the Principal
- All Implemented Interfaces:
- javax.ws.rs.container.ContainerRequestFilter
@Priority(value=1000)
public class ChainedAuthFilter<C,P extends Principal>
extends AuthFilter<C,P>
Chains together authFilters, short circuits when the first filter
successfully authenticates
N.B. AuthFilters can be chained together as long as they produce the same type
of Principal. This is not enforced by the type system at compile time, using
inconsistent principals will lead to runtime errors
There is no requirement for the filters that are chained to use the same type for credentials.
The reason is that the ChainedFilter delegates to a filter which encapsulates
the authenticator and credential type