public class org.apache.http.impl.client.DefaultRedirectStrategy implements org.apache.http.client.RedirectStrategy
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.impl.client.DefaultRedirectStrategy
  super_class: java.lang.Object
{
  private final org.apache.commons.logging.Log log;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public static final java.lang.String REDIRECT_LOCATIONS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "http.protocol.redirect-locations"
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.apache.http.impl.client.DefaultRedirectStrategy INSTANCE;
    descriptor: Lorg/apache/http/impl/client/DefaultRedirectStrategy;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private final java.lang.String[] redirectMethods;
    descriptor: [Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 83
            new org.apache.http.impl.client.DefaultRedirectStrategy
            dup
            invokespecial org.apache.http.impl.client.DefaultRedirectStrategy.<init>:()V
            putstatic org.apache.http.impl.client.DefaultRedirectStrategy.INSTANCE:Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
         0: .line 88
            aload 0 /* this */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 89
            ldc "GET"
            aastore
            dup
            iconst_1
         2: .line 90
            ldc "HEAD"
            aastore
            invokespecial org.apache.http.impl.client.DefaultRedirectStrategy.<init>:([Ljava/lang/String;)V
         3: .line 92
            return
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;

  public void <init>(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // java.lang.String[] redirectMethods
         0: .line 101
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 75
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.apache.http.impl.client.DefaultRedirectStrategy.log:Lorg/apache/commons/logging/Log;
         2: .line 102
            aload 1 /* redirectMethods */
            invokevirtual java.lang.String[].clone:()Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 2 /* tmp */
        start local 2 // java.lang.String[] tmp
         3: .line 103
            aload 2 /* tmp */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
         4: .line 104
            aload 0 /* this */
            aload 2 /* tmp */
            putfield org.apache.http.impl.client.DefaultRedirectStrategy.redirectMethods:[Ljava/lang/String;
         5: .line 105
            return
        end local 2 // java.lang.String[] tmp
        end local 1 // java.lang.String[] redirectMethods
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0    6     1  redirectMethods  [Ljava/lang/String;
            3    6     2              tmp  [Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      redirectMethods  final

  public boolean isRedirected(org.apache.http.HttpRequest, org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext);
    descriptor: (Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=4
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // org.apache.http.HttpRequest request
        start local 2 // org.apache.http.HttpResponse response
        start local 3 // org.apache.http.protocol.HttpContext context
         0: .line 112
            aload 1 /* request */
            ldc "HTTP request"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 113
            aload 2 /* response */
            ldc "HTTP response"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 115
            aload 2 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokeinterface org.apache.http.StatusLine.getStatusCode:()I
            istore 4 /* statusCode */
        start local 4 // int statusCode
         3: .line 116
            aload 1 /* request */
            invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
            invokeinterface org.apache.http.RequestLine.getMethod:()Ljava/lang/String;
            astore 5 /* method */
        start local 5 // java.lang.String method
         4: .line 117
            aload 2 /* response */
            ldc "location"
            invokeinterface org.apache.http.HttpResponse.getFirstHeader:(Ljava/lang/String;)Lorg/apache/http/Header;
            astore 6 /* locationHeader */
        start local 6 // org.apache.http.Header locationHeader
         5: .line 118
            iload 4 /* statusCode */
            tableswitch { // 301 - 307
                  301: 8
                  302: 6
                  303: 9
                  304: 10
                  305: 10
                  306: 10
                  307: 8
              default: 10
          }
         6: .line 120
      StackMap locals: int java.lang.String org.apache.http.Header
      StackMap stack:
            aload 0 /* this */
            aload 5 /* method */
            invokevirtual org.apache.http.impl.client.DefaultRedirectStrategy.isRedirectable:(Ljava/lang/String;)Z
            ifeq 7
            aload 6 /* locationHeader */
            ifnull 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
         8: .line 123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* method */
            invokevirtual org.apache.http.impl.client.DefaultRedirectStrategy.isRedirectable:(Ljava/lang/String;)Z
            ireturn
         9: .line 125
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        10: .line 127
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 6 // org.apache.http.Header locationHeader
        end local 5 // java.lang.String method
        end local 4 // int statusCode
        end local 3 // org.apache.http.protocol.HttpContext context
        end local 2 // org.apache.http.HttpResponse response
        end local 1 // org.apache.http.HttpRequest request
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0   11     1         request  Lorg/apache/http/HttpRequest;
            0   11     2        response  Lorg/apache/http/HttpResponse;
            0   11     3         context  Lorg/apache/http/protocol/HttpContext;
            3   11     4      statusCode  I
            4   11     5          method  Ljava/lang/String;
            5   11     6  locationHeader  Lorg/apache/http/Header;
    Exceptions:
      throws org.apache.http.ProtocolException
    MethodParameters:
          Name  Flags
      request   final
      response  final
      context   final

  public java.net.URI getLocationURI(org.apache.http.HttpRequest, org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext);
    descriptor: (Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=4
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // org.apache.http.HttpRequest request
        start local 2 // org.apache.http.HttpResponse response
        start local 3 // org.apache.http.protocol.HttpContext context
         0: .line 135
            aload 1 /* request */
            ldc "HTTP request"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 136
            aload 2 /* response */
            ldc "HTTP response"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 137
            aload 3 /* context */
            ldc "HTTP context"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 139
            aload 3 /* context */
            invokestatic org.apache.http.client.protocol.HttpClientContext.adapt:(Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/client/protocol/HttpClientContext;
            astore 4 /* clientContext */
        start local 4 // org.apache.http.client.protocol.HttpClientContext clientContext
         4: .line 142
            aload 2 /* response */
            ldc "location"
            invokeinterface org.apache.http.HttpResponse.getFirstHeader:(Ljava/lang/String;)Lorg/apache/http/Header;
            astore 5 /* locationHeader */
        start local 5 // org.apache.http.Header locationHeader
         5: .line 143
            aload 5 /* locationHeader */
            ifnonnull 11
         6: .line 145
            new org.apache.http.ProtocolException
            dup
         7: .line 146
            new java.lang.StringBuilder
            dup
            ldc "Received redirect response "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         8: .line 147
            ldc " but no location header"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 146
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 145
            invokespecial org.apache.http.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 149
      StackMap locals: org.apache.http.client.protocol.HttpClientContext org.apache.http.Header
      StackMap stack:
            aload 5 /* locationHeader */
            invokeinterface org.apache.http.Header.getValue:()Ljava/lang/String;
            astore 6 /* location */
        start local 6 // java.lang.String location
        12: .line 150
            aload 0 /* this */
            getfield org.apache.http.impl.client.DefaultRedirectStrategy.log:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 14
        13: .line 151
            aload 0 /* this */
            getfield org.apache.http.impl.client.DefaultRedirectStrategy.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Redirect requested to location '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* location */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        14: .line 154
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* clientContext */
            invokevirtual org.apache.http.client.protocol.HttpClientContext.getRequestConfig:()Lorg/apache/http/client/config/RequestConfig;
            astore 7 /* config */
        start local 7 // org.apache.http.client.config.RequestConfig config
        15: .line 156
            aload 0 /* this */
            aload 6 /* location */
            invokevirtual org.apache.http.impl.client.DefaultRedirectStrategy.createLocationURI:(Ljava/lang/String;)Ljava/net/URI;
            astore 8 /* uri */
        start local 8 // java.net.URI uri
        16: .line 159
            aload 7 /* config */
            invokevirtual org.apache.http.client.config.RequestConfig.isNormalizeUri:()Z
            ifeq 18
        17: .line 160
            aload 8 /* uri */
            invokestatic org.apache.http.client.utils.URIUtils.normalizeSyntax:(Ljava/net/URI;)Ljava/net/URI;
            astore 8 /* uri */
        18: .line 165
      StackMap locals: org.apache.http.client.config.RequestConfig java.net.URI
      StackMap stack:
            aload 8 /* uri */
            invokevirtual java.net.URI.isAbsolute:()Z
            ifne 34
        19: .line 166
            aload 7 /* config */
            invokevirtual org.apache.http.client.config.RequestConfig.isRelativeRedirectsAllowed:()Z
            ifne 23
        20: .line 167
            new org.apache.http.ProtocolException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Relative redirect location '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        21: .line 168
            aload 8 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "' not allowed"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 167
            invokespecial org.apache.http.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 171
      StackMap locals:
      StackMap stack:
            aload 4 /* clientContext */
            invokevirtual org.apache.http.client.protocol.HttpClientContext.getTargetHost:()Lorg/apache/http/HttpHost;
            astore 9 /* target */
        start local 9 // org.apache.http.HttpHost target
        24: .line 172
            aload 9 /* target */
            ldc "Target host"
            invokestatic org.apache.http.util.Asserts.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
        25: .line 173
            new java.net.URI
            dup
            aload 1 /* request */
            invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
            invokeinterface org.apache.http.RequestLine.getUri:()Ljava/lang/String;
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
            astore 10 /* requestURI */
        start local 10 // java.net.URI requestURI
        26: .line 174
            aload 10 /* requestURI */
            aload 9 /* target */
        27: .line 175
            aload 7 /* config */
            invokevirtual org.apache.http.client.config.RequestConfig.isNormalizeUri:()Z
            ifeq 28
            getstatic org.apache.http.client.utils.URIUtils.NORMALIZE:Ljava/util/EnumSet;
            goto 29
      StackMap locals: org.apache.http.impl.client.DefaultRedirectStrategy org.apache.http.HttpRequest org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.client.protocol.HttpClientContext org.apache.http.Header java.lang.String org.apache.http.client.config.RequestConfig java.net.URI org.apache.http.HttpHost java.net.URI
      StackMap stack: java.net.URI org.apache.http.HttpHost
        28: getstatic org.apache.http.client.utils.URIUtils.NO_FLAGS:Ljava/util/EnumSet;
        29: .line 174
      StackMap locals: org.apache.http.impl.client.DefaultRedirectStrategy org.apache.http.HttpRequest org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.client.protocol.HttpClientContext org.apache.http.Header java.lang.String org.apache.http.client.config.RequestConfig java.net.URI org.apache.http.HttpHost java.net.URI
      StackMap stack: java.net.URI org.apache.http.HttpHost java.util.EnumSet
            invokestatic org.apache.http.client.utils.URIUtils.rewriteURI:(Ljava/net/URI;Lorg/apache/http/HttpHost;Ljava/util/EnumSet;)Ljava/net/URI;
            astore 11 /* absoluteRequestURI */
        start local 11 // java.net.URI absoluteRequestURI
        30: .line 176
            aload 11 /* absoluteRequestURI */
            aload 8 /* uri */
            invokestatic org.apache.http.client.utils.URIUtils.resolve:(Ljava/net/URI;Ljava/net/URI;)Ljava/net/URI;
            astore 8 /* uri */
        end local 11 // java.net.URI absoluteRequestURI
        end local 10 // java.net.URI requestURI
        end local 9 // org.apache.http.HttpHost target
        31: .line 178
            goto 34
      StackMap locals: org.apache.http.impl.client.DefaultRedirectStrategy org.apache.http.HttpRequest org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.client.protocol.HttpClientContext org.apache.http.Header java.lang.String org.apache.http.client.config.RequestConfig java.net.URI
      StackMap stack: java.net.URISyntaxException
        32: astore 9 /* ex */
        start local 9 // java.net.URISyntaxException ex
        33: .line 179
            new org.apache.http.ProtocolException
            dup
            aload 9 /* ex */
            invokevirtual java.net.URISyntaxException.getMessage:()Ljava/lang/String;
            aload 9 /* ex */
            invokespecial org.apache.http.ProtocolException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 9 // java.net.URISyntaxException ex
        34: .line 182
      StackMap locals:
      StackMap stack:
            aload 4 /* clientContext */
        35: .line 183
            ldc "http.protocol.redirect-locations"
        36: .line 182
            invokevirtual org.apache.http.client.protocol.HttpClientContext.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.apache.http.impl.client.RedirectLocations
            astore 9 /* redirectLocations */
        start local 9 // org.apache.http.impl.client.RedirectLocations redirectLocations
        37: .line 184
            aload 9 /* redirectLocations */
            ifnonnull 40
        38: .line 185
            new org.apache.http.impl.client.RedirectLocations
            dup
            invokespecial org.apache.http.impl.client.RedirectLocations.<init>:()V
            astore 9 /* redirectLocations */
        39: .line 186
            aload 3 /* context */
            ldc "http.protocol.redirect-locations"
            aload 9 /* redirectLocations */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        40: .line 188
      StackMap locals: org.apache.http.impl.client.RedirectLocations
      StackMap stack:
            aload 7 /* config */
            invokevirtual org.apache.http.client.config.RequestConfig.isCircularRedirectsAllowed:()Z
            ifne 43
        41: .line 189
            aload 9 /* redirectLocations */
            aload 8 /* uri */
            invokevirtual org.apache.http.impl.client.RedirectLocations.contains:(Ljava/net/URI;)Z
            ifeq 43
        42: .line 190
            new org.apache.http.client.CircularRedirectException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Circular redirect to '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.http.client.CircularRedirectException.<init>:(Ljava/lang/String;)V
            athrow
        43: .line 193
      StackMap locals:
      StackMap stack:
            aload 9 /* redirectLocations */
            aload 8 /* uri */
            invokevirtual org.apache.http.impl.client.RedirectLocations.add:(Ljava/net/URI;)V
        44: .line 194
            aload 8 /* uri */
            areturn
        end local 9 // org.apache.http.impl.client.RedirectLocations redirectLocations
        end local 8 // java.net.URI uri
        end local 7 // org.apache.http.client.config.RequestConfig config
        end local 6 // java.lang.String location
        end local 5 // org.apache.http.Header locationHeader
        end local 4 // org.apache.http.client.protocol.HttpClientContext clientContext
        end local 3 // org.apache.http.protocol.HttpContext context
        end local 2 // org.apache.http.HttpResponse response
        end local 1 // org.apache.http.HttpRequest request
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   45     0                this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0   45     1             request  Lorg/apache/http/HttpRequest;
            0   45     2            response  Lorg/apache/http/HttpResponse;
            0   45     3             context  Lorg/apache/http/protocol/HttpContext;
            4   45     4       clientContext  Lorg/apache/http/client/protocol/HttpClientContext;
            5   45     5      locationHeader  Lorg/apache/http/Header;
           12   45     6            location  Ljava/lang/String;
           15   45     7              config  Lorg/apache/http/client/config/RequestConfig;
           16   45     8                 uri  Ljava/net/URI;
           24   31     9              target  Lorg/apache/http/HttpHost;
           26   31    10          requestURI  Ljava/net/URI;
           30   31    11  absoluteRequestURI  Ljava/net/URI;
           33   34     9                  ex  Ljava/net/URISyntaxException;
           37   45     9   redirectLocations  Lorg/apache/http/impl/client/RedirectLocations;
      Exception table:
        from    to  target  type
          16    31      32  Class java.net.URISyntaxException
    Exceptions:
      throws org.apache.http.ProtocolException
    MethodParameters:
          Name  Flags
      request   final
      response  final
      context   final

  protected java.net.URI createLocationURI(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URI;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // java.lang.String location
         0: .line 202
            new java.net.URI
            dup
            aload 1 /* location */
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
         1: areturn
         2: .line 203
      StackMap locals:
      StackMap stack: java.net.URISyntaxException
            astore 2 /* ex */
        start local 2 // java.net.URISyntaxException ex
         3: .line 204
            new org.apache.http.ProtocolException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid redirect URI: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* location */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* ex */
            invokespecial org.apache.http.ProtocolException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.net.URISyntaxException ex
        end local 1 // java.lang.String location
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0    4     1  location  Ljava/lang/String;
            3    4     2        ex  Ljava/net/URISyntaxException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.net.URISyntaxException
    Exceptions:
      throws org.apache.http.ProtocolException
    MethodParameters:
          Name  Flags
      location  final

  protected boolean isRedirectable(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // java.lang.String method
         0: .line 212
            aload 0 /* this */
            getfield org.apache.http.impl.client.DefaultRedirectStrategy.redirectMethods:[Ljava/lang/String;
            aload 1 /* method */
            invokestatic java.util.Arrays.binarySearch:([Ljava/lang/Object;Ljava/lang/Object;)I
            iflt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String method
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0    2     1  method  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      method  final

  public org.apache.http.client.methods.HttpUriRequest getRedirect(org.apache.http.HttpRequest, org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext);
    descriptor: (Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/client/methods/HttpUriRequest;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
        start local 1 // org.apache.http.HttpRequest request
        start local 2 // org.apache.http.HttpResponse response
        start local 3 // org.apache.http.protocol.HttpContext context
         0: .line 220
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            aload 3 /* context */
            invokevirtual org.apache.http.impl.client.DefaultRedirectStrategy.getLocationURI:(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Ljava/net/URI;
            astore 4 /* uri */
        start local 4 // java.net.URI uri
         1: .line 221
            aload 1 /* request */
            invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
            invokeinterface org.apache.http.RequestLine.getMethod:()Ljava/lang/String;
            astore 5 /* method */
        start local 5 // java.lang.String method
         2: .line 222
            aload 5 /* method */
            ldc "HEAD"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 223
            new org.apache.http.client.methods.HttpHead
            dup
            aload 4 /* uri */
            invokespecial org.apache.http.client.methods.HttpHead.<init>:(Ljava/net/URI;)V
            areturn
         4: .line 224
      StackMap locals: java.net.URI java.lang.String
      StackMap stack:
            aload 5 /* method */
            ldc "GET"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 225
            new org.apache.http.client.methods.HttpGet
            dup
            aload 4 /* uri */
            invokespecial org.apache.http.client.methods.HttpGet.<init>:(Ljava/net/URI;)V
            areturn
         6: .line 227
      StackMap locals:
      StackMap stack:
            aload 2 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokeinterface org.apache.http.StatusLine.getStatusCode:()I
            istore 6 /* status */
        start local 6 // int status
         7: .line 228
            iload 6 /* status */
            sipush 307
            if_icmpne 9
         8: .line 229
            aload 1 /* request */
            invokestatic org.apache.http.client.methods.RequestBuilder.copy:(Lorg/apache/http/HttpRequest;)Lorg/apache/http/client/methods/RequestBuilder;
            aload 4 /* uri */
            invokevirtual org.apache.http.client.methods.RequestBuilder.setUri:(Ljava/net/URI;)Lorg/apache/http/client/methods/RequestBuilder;
            invokevirtual org.apache.http.client.methods.RequestBuilder.build:()Lorg/apache/http/client/methods/HttpUriRequest;
            goto 10
         9: .line 230
      StackMap locals: int
      StackMap stack:
            new org.apache.http.client.methods.HttpGet
            dup
            aload 4 /* uri */
            invokespecial org.apache.http.client.methods.HttpGet.<init>:(Ljava/net/URI;)V
        10: .line 228
      StackMap locals:
      StackMap stack: org.apache.http.client.methods.HttpUriRequest
            areturn
        end local 6 // int status
        end local 5 // java.lang.String method
        end local 4 // java.net.URI uri
        end local 3 // org.apache.http.protocol.HttpContext context
        end local 2 // org.apache.http.HttpResponse response
        end local 1 // org.apache.http.HttpRequest request
        end local 0 // org.apache.http.impl.client.DefaultRedirectStrategy this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/apache/http/impl/client/DefaultRedirectStrategy;
            0   11     1   request  Lorg/apache/http/HttpRequest;
            0   11     2  response  Lorg/apache/http/HttpResponse;
            0   11     3   context  Lorg/apache/http/protocol/HttpContext;
            1   11     4       uri  Ljava/net/URI;
            2   11     5    method  Ljava/lang/String;
            7   11     6    status  I
    Exceptions:
      throws org.apache.http.ProtocolException
    MethodParameters:
          Name  Flags
      request   final
      response  final
      context   final
}
SourceFile: "DefaultRedirectStrategy.java"
InnerClasses:
  public final UriFlag = org.apache.http.client.utils.URIUtils$UriFlag of org.apache.http.client.utils.URIUtils
    RuntimeInvisibleAnnotations: 
      org.apache.http.annotation.Contract(threading = org.apache.http.annotation.ThreadingBehavior.IMMUTABLE:Lorg/apache/http/annotation/ThreadingBehavior;)