org.apache.http.impl.client

## Class ProxyAuthenticationStrategy

- java.lang.Object
- - org.apache.http.impl.client.ProxyAuthenticationStrategy

All Implemented Interfaces:
  AuthenticationStrategy

    @Contract(threading=IMMUTABLE)
    public class ProxyAuthenticationStrategy
    extends Object

Default `AuthenticationStrategy` implementation for proxy host authentication.

Since:
  4.2

### Field Summary

Fields
`static ProxyAuthenticationStrategy` `INSTANCE`

### Constructor Summary

Constructors
Constructor and Description
`ProxyAuthenticationStrategy()`

### Method Summary

Methods
`void` `authFailed(org.apache.http.HttpHost authhost, AuthScheme authScheme, org.apache.http.protocol.HttpContext context)` Callback invoked in case of unsuccessful authentication.
`void` `authSucceeded(org.apache.http.HttpHost authhost, AuthScheme authScheme, org.apache.http.protocol.HttpContext context)` Callback invoked in case of successful authentication.
`Map<String,org.apache.http.Header>` `getChallenges(org.apache.http.HttpHost authhost, org.apache.http.HttpResponse response, org.apache.http.protocol.HttpContext context)` Generates a map of challenge auth-scheme => Header entries.
`boolean` `isAuthenticationRequested(org.apache.http.HttpHost authhost, org.apache.http.HttpResponse response, org.apache.http.protocol.HttpContext context)` Determines if the given HTTP response response represents an authentication challenge that was sent back as a result of authentication failure.
`protected boolean` `isCachable(AuthScheme authScheme)`
`Queue<AuthOption>` `select(Map<String,org.apache.http.Header> challenges, org.apache.http.HttpHost authhost, org.apache.http.HttpResponse response, org.apache.http.protocol.HttpContext context)` Selects one authentication challenge out of all available and creates and generates `AuthOption` instance capable of processing that challenge.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### INSTANCE

    public static final ProxyAuthenticationStrategy INSTANCE

### Constructor Detail

#### ProxyAuthenticationStrategy

    public ProxyAuthenticationStrategy()

### Method Detail

#### isAuthenticationRequested

    public boolean isAuthenticationRequested(org.apache.http.HttpHost authhost,
                                    org.apache.http.HttpResponse response,
                                    org.apache.http.protocol.HttpContext context)

Description copied from interface: `AuthenticationStrategy`
Determines if the given HTTP response response represents an authentication challenge that was sent back as a result of authentication failure.

Specified by:
  `isAuthenticationRequested` in interface `AuthenticationStrategy`
Parameters:
  `authhost` - authentication host.
  `response` - HTTP response.
  `context` - HTTP context.
Returns:
  `true` if user authentication is required, `false` otherwise.

#### getChallenges

    public Map<String,org.apache.http.Header> getChallenges(org.apache.http.HttpHost authhost,
                                                   org.apache.http.HttpResponse response,
                                                   org.apache.http.protocol.HttpContext context)
                                                     throws MalformedChallengeException

Generates a map of challenge auth-scheme => Header entries.

Specified by:
  `getChallenges` in interface `AuthenticationStrategy`
Parameters:
  `authhost` - authentication host.
  `response` - HTTP response.
  `context` - HTTP context.
Returns:
  map: key=lower-cased auth-scheme name, value=Header that contains the challenge
Throws:
  `MalformedChallengeException` - if one of the authentication challenges is not valid or malformed.

#### select

    public Queue<AuthOption> select(Map<String,org.apache.http.Header> challenges,
                           org.apache.http.HttpHost authhost,
                           org.apache.http.HttpResponse response,
                           org.apache.http.protocol.HttpContext context)
                             throws MalformedChallengeException

Description copied from interface: `AuthenticationStrategy`
Selects one authentication challenge out of all available and creates and generates `AuthOption` instance capable of processing that challenge.

Specified by:
  `select` in interface `AuthenticationStrategy`
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

    public void authSucceeded(org.apache.http.HttpHost authhost,
                     AuthScheme authScheme,
                     org.apache.http.protocol.HttpContext context)

Description copied from interface: `AuthenticationStrategy`
Callback invoked in case of successful authentication.

Specified by:
  `authSucceeded` in interface `AuthenticationStrategy`
Parameters:
  `authhost` - authentication host.
  `authScheme` - authentication scheme used.
  `context` - HTTP context.

#### isCachable

    protected boolean isCachable(AuthScheme authScheme)

#### authFailed

    public void authFailed(org.apache.http.HttpHost authhost,
                  AuthScheme authScheme,
                  org.apache.http.protocol.HttpContext context)

Description copied from interface: `AuthenticationStrategy`
Callback invoked in case of unsuccessful authentication.

Specified by:
  `authFailed` in interface `AuthenticationStrategy`
Parameters:
  `authhost` - authentication host.
  `authScheme` - authentication scheme used.
  `context` - HTTP context.