org.apache.http.auth

## Class AuthScope

- java.lang.Object
- - org.apache.http.auth.AuthScope

-     @Contract(threading=IMMUTABLE)
      public class AuthScope
      extends Object

  `AuthScope` represents an authentication scope consisting of a host name, a port number, a realm name and an authentication scheme name.

  This class can also optionally contain a host of origin, if created in response to authentication challenge from a specific host.

  Since:
    4.0

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static AuthScope` | `ANY` Default scope matching any host, port, realm and authentication scheme.
    `static String` | `ANY_HOST` The `null` value represents any host.
    `static int` | `ANY_PORT` The `-1` value represents any port.
    `static String` | `ANY_REALM` The `null` value represents any realm.
    `static String` | `ANY_SCHEME` The `null` value represents any authentication scheme.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AuthScope(AuthScope authscope)` Creates a copy of the given credentials scope.
    `AuthScope(org.apache.http.HttpHost origin)` Defines auth scope for a specific host of origin.
    `AuthScope(org.apache.http.HttpHost origin, String realm, String schemeName)` Defines auth scope for a specific host of origin.
    `AuthScope(String host, int port)` Defines auth scope with the given `host` and `port`.
    `AuthScope(String host, int port, String realm)` Defines auth scope with the given `host`, `port` and `realm`.
    `AuthScope(String host, int port, String realm, String schemeName)` Defines auth scope with the given `host`, `port`, `realm`, and `schemeName`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object o)`
    `String` | `getHost()`
    `org.apache.http.HttpHost` | `getOrigin()`
    `int` | `getPort()`
    `String` | `getRealm()`
    `String` | `getScheme()`
    `int` | `hashCode()`
    `int` | `match(AuthScope that)` Tests if the authentication scopes match.
    `String` | `toString()`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### ANY_HOST

          public static final String ANY_HOST

      The `null` value represents any host. In the future versions of HttpClient the use of this parameter will be discontinued.

    - #### ANY_PORT

          public static final int ANY_PORT

      The `-1` value represents any port.
      See Also:
        Constant Field Values

    - #### ANY_REALM

          public static final String ANY_REALM

      The `null` value represents any realm.

    - #### ANY_SCHEME

          public static final String ANY_SCHEME

      The `null` value represents any authentication scheme.

    - #### ANY

          public static final AuthScope ANY

      Default scope matching any host, port, realm and authentication scheme. In the future versions of HttpClient the use of this parameter will be discontinued.

  - ### Constructor Detail

    - #### AuthScope

          public AuthScope(String host,
                   int port,
                   String realm,
                   String schemeName)

      Defines auth scope with the given `host`, `port`, `realm`, and `schemeName`.
      Parameters:
        `host` - authentication host. May be `ANY_HOST` if applies to any host.
        `port` - authentication port. May be `ANY_PORT` if applies to any port of the host.
        `realm` - authentication realm. May be `ANY_REALM` if applies to any realm on the host.
        `schemeName` - authentication scheme. May be `ANY_SCHEME` if applies to any scheme supported by the host.

    - #### AuthScope

          public AuthScope(org.apache.http.HttpHost origin,
                   String realm,
                   String schemeName)

      Defines auth scope for a specific host of origin.
      Parameters:
        `origin` - host of origin
        `realm` - authentication realm. May be `ANY_REALM` if applies to any realm on the host.
        `schemeName` - authentication scheme. May be `ANY_SCHEME` if applies to any scheme supported by the host.
      Since:
        4.2

    - #### AuthScope

          public AuthScope(org.apache.http.HttpHost origin)

      Defines auth scope for a specific host of origin.
      Parameters:
        `origin` - host of origin
      Since:
        4.2

    - #### AuthScope

          public AuthScope(String host,
                   int port,
                   String realm)

      Defines auth scope with the given `host`, `port` and `realm`.
      Parameters:
        `host` - authentication host. May be `ANY_HOST` if applies to any host.
        `port` - authentication port. May be `ANY_PORT` if applies to any port of the host.
        `realm` - authentication realm. May be `ANY_REALM` if applies to any realm on the host.

    - #### AuthScope

          public AuthScope(String host,
                   int port)

      Defines auth scope with the given `host` and `port`.
      Parameters:
        `host` - authentication host. May be `ANY_HOST` if applies to any host.
        `port` - authentication port. May be `ANY_PORT` if applies to any port of the host.

    - #### AuthScope

          public AuthScope(AuthScope authscope)

      Creates a copy of the given credentials scope.

  - ### Method Detail

    - #### getOrigin

          public org.apache.http.HttpHost getOrigin()

      Returns:
        host of origin. If unknown returns @null,
      Since:
        4.4

    - #### getHost

          public String getHost()

      Returns:
        the host

    - #### getPort

          public int getPort()

      Returns:
        the port

    - #### getRealm

          public String getRealm()

      Returns:
        the realm name

    - #### getScheme

          public String getScheme()

      Returns:
        the scheme type

    - #### match

          public int match(AuthScope that)

      Tests if the authentication scopes match.
      Returns:
        the match factor. Negative value signifies no match. Non-negative signifies a match. The greater the returned value the closer the match.

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `Object`
      See Also:
        `Object.equals(Object)`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`
      See Also:
        `Object.toString()`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`
      See Also:
        `Object.hashCode()`

Copyright © 1999–2022 The Apache Software Foundation. All rights reserved.