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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
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.java.util.Map<java.lang.String,Header>
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.java.util.Queue<AuthOption>
select(java.util.Map<java.lang.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 Detail
-
isAuthenticationRequested
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.- Parameters:
authhost
- authentication host.response
- HTTP response.context
- HTTP context.- Returns:
true
if user authentication is required,false
otherwise.
-
getChallenges
java.util.Map<java.lang.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
java.util.Queue<AuthOption> select(java.util.Map<java.lang.String,Header> challenges, HttpHost authhost, HttpResponse response, HttpContext context) throws MalformedChallengeException
Selects 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
void authSucceeded(HttpHost authhost, AuthScheme authScheme, HttpContext context)
Callback invoked in case of successful authentication.- Parameters:
authhost
- authentication host.authScheme
- authentication scheme used.context
- HTTP context.
-
authFailed
void authFailed(HttpHost authhost, AuthScheme authScheme, HttpContext context)
Callback invoked in case of unsuccessful authentication.- Parameters:
authhost
- authentication host.authScheme
- authentication scheme used.context
- HTTP context.
-
-