## 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
`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.
`Map<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.
`Queue<AuthOption>` `select(Map<String,Header> challenges, HttpHost authhost, HttpResponse response, HttpContext context)` Selects one authentication challenge out of all available and creates and generates `AuthOption` 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

    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 MalformedChallengeException

  Selects one authentication challenge out of all available and creates and generates `AuthOption` 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.

Copyright © 1999-2013 The Apache Software Foundation. All Rights Reserved.