class org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection extends java.net.URLConnection
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection
  super_class: java.net.URLConnection
{
  private final org.apache.catalina.webresources.StandardRoot root;
    descriptor: Lorg/apache/catalina/webresources/StandardRoot;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final boolean usesClassLoaderResources;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.net.URL resourceURL;
    descriptor: Ljava/net/URL;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(java.net.URL, org.apache.catalina.webresources.StandardRoot, java.lang.String, boolean);
    descriptor: (Ljava/net/URL;Lorg/apache/catalina/webresources/StandardRoot;Ljava/lang/String;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
        start local 1 // java.net.URL resourceURL
        start local 2 // org.apache.catalina.webresources.StandardRoot root
        start local 3 // java.lang.String webAppPath
        start local 4 // boolean usesClassLoaderResources
         0: .line 498
            aload 0 /* this */
            aload 1 /* resourceURL */
            invokespecial java.net.URLConnection.<init>:(Ljava/net/URL;)V
         1: .line 499
            aload 0 /* this */
            aload 2 /* root */
            putfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.root:Lorg/apache/catalina/webresources/StandardRoot;
         2: .line 500
            aload 0 /* this */
            aload 3 /* webAppPath */
            putfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.webAppPath:Ljava/lang/String;
         3: .line 501
            aload 0 /* this */
            iload 4 /* usesClassLoaderResources */
            putfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.usesClassLoaderResources:Z
         4: .line 502
            aload 0 /* this */
            aload 1 /* resourceURL */
            putfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.resourceURL:Ljava/net/URL;
         5: .line 503
            return
        end local 4 // boolean usesClassLoaderResources
        end local 3 // java.lang.String webAppPath
        end local 2 // org.apache.catalina.webresources.StandardRoot root
        end local 1 // java.net.URL resourceURL
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    6     0                      this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;
            0    6     1               resourceURL  Ljava/net/URL;
            0    6     2                      root  Lorg/apache/catalina/webresources/StandardRoot;
            0    6     3                webAppPath  Ljava/lang/String;
            0    6     4  usesClassLoaderResources  Z
    MethodParameters:
                          Name  Flags
      resourceURL               
      root                      
      webAppPath                
      usesClassLoaderResources  

  public void connect();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 508
            return
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;
    Exceptions:
      throws java.io.IOException

  public java.io.InputStream getInputStream();
    descriptor: ()Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 512
            aload 0 /* this */
            invokevirtual org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.getResource:()Lorg/apache/catalina/WebResource;
            astore 1 /* resource */
        start local 1 // org.apache.catalina.WebResource resource
         1: .line 513
            aload 1 /* resource */
            invokeinterface org.apache.catalina.WebResource.isDirectory:()Z
            ifeq 3
         2: .line 514
            aload 1 /* resource */
            invokeinterface org.apache.catalina.WebResource.getWebResourceRoot:()Lorg/apache/catalina/WebResourceRoot;
            aload 0 /* this */
            getfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.webAppPath:Ljava/lang/String;
            invokeinterface org.apache.catalina.WebResourceRoot.list:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic org.apache.catalina.webresources.CachedResource.buildInputStream:([Ljava/lang/String;)Ljava/io/InputStream;
            areturn
         3: .line 516
      StackMap locals: org.apache.catalina.WebResource
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.getResource:()Lorg/apache/catalina/WebResource;
            invokeinterface org.apache.catalina.WebResource.getInputStream:()Ljava/io/InputStream;
            areturn
        end local 1 // org.apache.catalina.WebResource resource
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;
            1    4     1  resource  Lorg/apache/catalina/WebResource;
    Exceptions:
      throws java.io.IOException

  public java.security.Permission getPermission();
    descriptor: ()Ljava/security/Permission;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 523
            aload 0 /* this */
            getfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.resourceURL:Ljava/net/URL;
            invokevirtual java.net.URL.openConnection:()Ljava/net/URLConnection;
            invokevirtual java.net.URLConnection.getPermission:()Ljava/security/Permission;
            areturn
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;
    Exceptions:
      throws java.io.IOException

  public long getLastModified();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 528
            aload 0 /* this */
            invokevirtual org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.getResource:()Lorg/apache/catalina/WebResource;
            invokeinterface org.apache.catalina.WebResource.getLastModified:()J
            lreturn
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;

  public long getContentLengthLong();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 533
            aload 0 /* this */
            invokevirtual org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.getResource:()Lorg/apache/catalina/WebResource;
            invokeinterface org.apache.catalina.WebResource.getContentLength:()J
            lreturn
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;

  private org.apache.catalina.WebResource getResource();
    descriptor: ()Lorg/apache/catalina/WebResource;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
         0: .line 537
            aload 0 /* this */
            getfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.root:Lorg/apache/catalina/webresources/StandardRoot;
            aload 0 /* this */
            getfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.webAppPath:Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection.usesClassLoaderResources:Z
            invokevirtual org.apache.catalina.webresources.StandardRoot.getResource:(Ljava/lang/String;ZZ)Lorg/apache/catalina/WebResource;
            areturn
        end local 0 // org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/webresources/CachedResource$CachedResourceURLConnection;
}
SourceFile: "CachedResource.java"
NestHost: org.apache.catalina.webresources.CachedResource
InnerClasses:
  private CachedResourceURLConnection = org.apache.catalina.webresources.CachedResource$CachedResourceURLConnection of org.apache.catalina.webresources.CachedResource