org.apache.hc.client5.http.protocol

## Interface RedirectStrategy

- All Known Implementing Classes:
    DefaultRedirectStrategy

      @Contract(threading=STATELESS)
      public interface RedirectStrategy

  A strategy for determining if an HTTP request should be redirected to a new location in response to an HTTP response received from the target server.

  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.1

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `URI` | `getLocationURI(org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse response, org.apache.hc.core5.http.protocol.HttpContext context)`
    `boolean` | `isRedirected(org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse response, org.apache.hc.core5.http.protocol.HttpContext context)` Determines if a request should be redirected to a new location given the response from the target server.

- - ### Method Detail

    - #### isRedirected

          boolean isRedirected(org.apache.hc.core5.http.HttpRequest request,
                               org.apache.hc.core5.http.HttpResponse response,
                               org.apache.hc.core5.http.protocol.HttpContext context)
                        throws org.apache.hc.core5.http.HttpException

      Determines if a request should be redirected to a new location given the response from the target server.
      Parameters:
        `request` - the executed request
        `response` - the response received from the target server
        `context` - the context for the request execution
      Returns:
        `true` if the request should be redirected, `false` otherwise
      Throws:
        `org.apache.hc.core5.http.HttpException`

    - #### getLocationURI

          URI getLocationURI(org.apache.hc.core5.http.HttpRequest request,
                             org.apache.hc.core5.http.HttpResponse response,
                             org.apache.hc.core5.http.protocol.HttpContext context)
                      throws org.apache.hc.core5.http.HttpException

      Throws:
        `org.apache.hc.core5.http.HttpException`

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