Package org.apache.http.client
Interface AuthenticationStrategy
- All Known Implementing Classes:
ProxyAuthenticationStrategy
,TargetAuthenticationStrategy
public interface AuthenticationStrategy
/**
A handler for determining if an HTTP response represents an authentication challenge that was
sent back to the client as a result of authentication failure.
Implementations of this interface must be thread-safe. Access to shared data must be synchronized as methods of this interface may be executed from multiple threads.
- Since:
- 4.2
-
Method Summary
Modifier and TypeMethodDescriptionvoid
authFailed
(HttpHost authhost, AuthScheme authScheme, HttpContext context) Callback invoked in case of unsuccessful authentication.void
authSucceeded
(HttpHost authhost, AuthScheme authScheme, HttpContext context) Callback invoked in case of successful authentication.getChallenges
(HttpHost authhost, HttpResponse response, HttpContext context) Extracts from the given HTTP response a collection of authentication challenges, each of which represents an authentication scheme supported by the authentication host.boolean
isAuthenticationRequested
(HttpHost authhost, HttpResponse response, HttpContext context) Determines if the given HTTP response response represents an authentication challenge that was sent back as a result of authentication failure.select
(Map<String, Header> challenges, HttpHost authhost, HttpResponse response, HttpContext context) Selects one authentication challenge out of all available and creates and generatesAuthOption
instance capable of processing that challenge.
-
Method Details
-
isAuthenticationRequested
Determines if the given HTTP response response represents an authentication challenge that was sent back as a result of authentication failure.- Parameters:
authhost
- authentication host.response
- HTTP response.context
- HTTP context.- Returns:
true
if user authentication is required,false
otherwise.
-
getChallenges
Map<String,Header> getChallenges(HttpHost authhost, HttpResponse response, HttpContext context) throws MalformedChallengeException Extracts from the given HTTP response a collection of authentication challenges, each of which represents an authentication scheme supported by the authentication host.- Parameters:
authhost
- authentication host.response
- HTTP response.context
- HTTP context.- Returns:
- a collection of challenges keyed by names of corresponding authentication schemes.
- Throws:
MalformedChallengeException
- if one of the authentication challenges is not valid or malformed.
-
select
Queue<AuthOption> select(Map<String, Header> challenges, HttpHost authhost, HttpResponse response, HttpContext context) throws MalformedChallengeExceptionSelects one authentication challenge out of all available and creates and generatesAuthOption
instance capable of processing that challenge.- Parameters:
challenges
- collection of challenges.authhost
- authentication host.response
- HTTP response.context
- HTTP context.- Returns:
- authentication auth schemes that can be used for authentication. Can be empty.
- Throws:
MalformedChallengeException
- if one of the authentication challenges is not valid or malformed.
-
authSucceeded
Callback invoked in case of successful authentication.- Parameters:
authhost
- authentication host.authScheme
- authentication scheme used.context
- HTTP context.
-
authFailed
Callback invoked in case of unsuccessful authentication.- Parameters:
authhost
- authentication host.authScheme
- authentication scheme used.context
- HTTP context.
-