public class org.eclipse.jetty.util.resource.JarResource extends org.eclipse.jetty.util.resource.URLResource
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jetty.util.resource.JarResource
super_class: org.eclipse.jetty.util.resource.URLResource
{
private static final org.slf4j.Logger LOG;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
protected java.net.JarURLConnection _jarConnection;
descriptor: Ljava/net/JarURLConnection;
flags: (0x0004) ACC_PROTECTED
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/eclipse/jetty/util/resource/JarResource;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.net.URL);
descriptor: (Ljava/net/URL;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokespecial org.eclipse.jetty.util.resource.URLResource.<init>:(Ljava/net/URL;Ljava/net/URLConnection;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/resource/JarResource;
0 2 1 url Ljava/net/URL;
MethodParameters:
Name Flags
url
protected void <init>(java.net.URL, boolean);
descriptor: (Ljava/net/URL;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
iload 2
invokespecial org.eclipse.jetty.util.resource.URLResource.<init>:(Ljava/net/URL;Ljava/net/URLConnection;Z)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/resource/JarResource;
0 2 1 url Ljava/net/URL;
0 2 2 useCaches Z
MethodParameters:
Name Flags
url
useCaches
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
getfield org.eclipse.jetty.util.resource.JarResource._lock:Lorg/eclipse/jetty/util/thread/AutoLock;
invokevirtual org.eclipse.jetty.util.thread.AutoLock.lock:()Lorg/eclipse/jetty/util/thread/AutoLock;
astore 3
start local 3 2: aload 0
aconst_null
putfield org.eclipse.jetty.util.resource.JarResource._jarConnection:Ljava/net/JarURLConnection;
3: aload 0
invokespecial org.eclipse.jetty.util.resource.URLResource.close:()V
4: aload 3
ifnull 10
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
goto 10
StackMap locals: org.eclipse.jetty.util.resource.JarResource java.lang.Throwable java.lang.Throwable org.eclipse.jetty.util.thread.AutoLock
StackMap stack: java.lang.Throwable
5: astore 1
aload 3
ifnull 6
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
end local 3 StackMap locals:
StackMap stack:
6: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 2
aload 1
ifnonnull 8
aload 2
astore 1
goto 9
StackMap locals:
StackMap stack:
8: aload 1
aload 2
if_acmpeq 9
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
9: aload 1
athrow
10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jetty/util/resource/JarResource;
2 6 3 l Lorg/eclipse/jetty/util/thread/AutoLock;
Exception table:
from to target type
2 4 5 any
1 7 7 any
protected boolean checkConnection();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
getfield org.eclipse.jetty.util.resource.JarResource._lock:Lorg/eclipse/jetty/util/thread/AutoLock;
invokevirtual org.eclipse.jetty.util.thread.AutoLock.lock:()Lorg/eclipse/jetty/util/thread/AutoLock;
astore 3
start local 3 2: aload 0
invokespecial org.eclipse.jetty.util.resource.URLResource.checkConnection:()Z
pop
3: aload 0
getfield org.eclipse.jetty.util.resource.JarResource._jarConnection:Ljava/net/JarURLConnection;
aload 0
getfield org.eclipse.jetty.util.resource.JarResource._connection:Ljava/net/URLConnection;
if_acmpeq 9
4: aload 0
invokevirtual org.eclipse.jetty.util.resource.JarResource.newConnection:()V
5: goto 9
6: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.lang.Throwable java.lang.Throwable org.eclipse.jetty.util.thread.AutoLock
StackMap stack: java.io.IOException
astore 4
start local 4 7: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
ldc "IGNORED"
aload 4
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Throwable;)V
8: aload 0
aconst_null
putfield org.eclipse.jetty.util.resource.JarResource._jarConnection:Ljava/net/JarURLConnection;
end local 4 9: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.resource.JarResource._jarConnection:Ljava/net/JarURLConnection;
ifnull 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
11: StackMap locals:
StackMap stack: int
aload 3
ifnull 12
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
12: StackMap locals:
StackMap stack: int
ireturn
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 1
14: aload 3
ifnull 15
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock.close:()V
end local 3 StackMap locals:
StackMap stack:
15: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 2
aload 1
ifnonnull 17
aload 2
astore 1
goto 18
StackMap locals:
StackMap stack:
17: aload 1
aload 2
if_acmpeq 18
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/eclipse/jetty/util/resource/JarResource;
2 15 3 l Lorg/eclipse/jetty/util/thread/AutoLock;
7 9 4 e Ljava/io/IOException;
Exception table:
from to target type
3 5 6 Class java.io.IOException
2 11 13 any
1 12 16 any
13 16 16 any
protected void newConnection();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.eclipse.jetty.util.resource.JarResource._connection:Ljava/net/URLConnection;
checkcast java.net.JarURLConnection
putfield org.eclipse.jetty.util.resource.JarResource._jarConnection:Ljava/net/JarURLConnection;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/resource/JarResource;
Exceptions:
throws java.io.IOException
public boolean exists();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.resource.JarResource._urlString:Ljava/lang/String;
ldc "!/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 2
1: aload 0
invokevirtual org.eclipse.jetty.util.resource.JarResource.checkConnection:()Z
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokespecial org.eclipse.jetty.util.resource.URLResource.exists:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/util/resource/JarResource;
public java.io.File getFile();
descriptor: ()Ljava/io/File;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/resource/JarResource;
Exceptions:
throws java.io.IOException
public java.io.InputStream getInputStream();
descriptor: ()Ljava/io/InputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jetty.util.resource.JarResource.checkConnection:()Z
pop
1: aload 0
getfield org.eclipse.jetty.util.resource.JarResource._urlString:Ljava/lang/String;
ldc "!/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 3
2: new org.eclipse.jetty.util.resource.JarResource$1
dup
aload 0
aload 0
iconst_0
invokevirtual org.eclipse.jetty.util.resource.JarResource.getInputStream:(Z)Ljava/io/InputStream;
invokespecial org.eclipse.jetty.util.resource.JarResource$1.<init>:(Lorg/eclipse/jetty/util/resource/JarResource;Ljava/io/InputStream;)V
areturn
3: StackMap locals:
StackMap stack:
new java.net.URL
dup
aload 0
getfield org.eclipse.jetty.util.resource.JarResource._urlString:Ljava/lang/String;
iconst_4
aload 0
getfield org.eclipse.jetty.util.resource.JarResource._urlString:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iconst_2
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
astore 1
start local 1 4: aload 1
invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
astore 2
start local 2 5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jetty/util/resource/JarResource;
4 6 1 url Ljava/net/URL;
5 6 2 is Ljava/io/InputStream;
Exceptions:
throws java.io.IOException
public void copyTo(java.io.File);
descriptor: (Ljava/io/File;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=22, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.util.resource.JarResource.exists:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 4
3: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
ldc "Extract {} to {}"
aload 0
aload 1
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.resource.JarResource.getURI:()Ljava/net/URI;
invokevirtual java.net.URI.toASCIIString:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 2
start local 2 5: aload 2
ldc "!/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 3
start local 3 6: iload 3
iflt 7
iconst_4
goto 8
StackMap locals: java.lang.String int
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 4
start local 4 9: iload 3
ifge 11
10: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Not a valid jar url: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: int
StackMap stack:
new java.net.URL
dup
aload 2
iload 4
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
astore 5
start local 5 12: iload 3
iconst_2
iadd
aload 2
invokevirtual java.lang.String.length:()I
if_icmpge 13
aload 2
iload 3
iconst_2
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
goto 14
StackMap locals: java.net.URL
StackMap stack:
13: aconst_null
StackMap locals:
StackMap stack: java.lang.String
14: astore 6
start local 6 15: aload 6
ifnull 16
aload 6
ldc "/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 16
iconst_1
goto 17
StackMap locals: java.lang.String
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 7
start local 7 18: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 20
19: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
ldc "Extracting entry = {} from jar {}"
aload 6
aload 5
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
20: StackMap locals: int
StackMap stack:
aload 5
invokevirtual java.net.URL.openConnection:()Ljava/net/URLConnection;
astore 8
start local 8 21: aload 8
iconst_0
invokevirtual java.net.URLConnection.setUseCaches:(Z)V
22: aconst_null
astore 9
aconst_null
astore 10
23: aload 8
invokevirtual java.net.URLConnection.getInputStream:()Ljava/io/InputStream;
astore 11
start local 11 24: new java.util.jar.JarInputStream
dup
aload 11
invokespecial java.util.jar.JarInputStream.<init>:(Ljava/io/InputStream;)V
astore 12
start local 12 25: goto 72
start local 13 26: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream java.util.jar.JarEntry
StackMap stack:
aload 13
invokevirtual java.util.jar.JarEntry.getName:()Ljava/lang/String;
astore 15
start local 15 27: aload 6
ifnull 39
aload 15
aload 6
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 39
28: iload 7
ifne 30
aload 6
invokevirtual java.lang.String.length:()I
iconst_1
iadd
aload 15
invokevirtual java.lang.String.length:()I
if_icmpne 30
aload 15
ldc "/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 30
29: iconst_1
istore 7
30: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream java.util.jar.JarEntry top java.lang.String
StackMap stack:
iload 7
ifeq 37
31: aload 15
aload 6
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 15
32: aload 15
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 35
33: iconst_1
istore 14
start local 14 34: goto 43
end local 14 35: StackMap locals:
StackMap stack:
iconst_0
istore 14
start local 14 36: goto 43
end local 14 37: StackMap locals:
StackMap stack:
iconst_1
istore 14
start local 14 38: goto 43
end local 14 39: StackMap locals:
StackMap stack:
aload 6
ifnull 42
aload 15
aload 6
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 42
40: iconst_0
istore 14
start local 14 41: goto 43
end local 14 42: StackMap locals:
StackMap stack:
iconst_1
istore 14
start local 14 43: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream java.util.jar.JarEntry int java.lang.String
StackMap stack:
iload 14
ifne 47
44: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 72
45: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
ldc "Skipping entry: {}"
aload 15
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
46: goto 72
47: StackMap locals:
StackMap stack:
aload 15
bipush 92
bipush 47
invokestatic org.eclipse.jetty.util.StringUtil.replace:(Ljava/lang/String;CC)Ljava/lang/String;
astore 16
start local 16 48: aload 16
invokestatic org.eclipse.jetty.util.URIUtil.canonicalPath:(Ljava/lang/String;)Ljava/lang/String;
astore 16
49: aload 16
ifnonnull 53
50: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 72
51: getstatic org.eclipse.jetty.util.resource.JarResource.LOG:Lorg/slf4j/Logger;
ldc "Invalid entry: {}"
aload 15
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
52: goto 72
53: StackMap locals: java.lang.String
StackMap stack:
new java.io.File
dup
aload 1
aload 15
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 17
start local 17 54: aload 13
invokevirtual java.util.jar.JarEntry.isDirectory:()Z
ifeq 58
55: aload 17
invokevirtual java.io.File.exists:()Z
ifne 72
56: aload 17
invokevirtual java.io.File.mkdirs:()Z
pop
57: goto 72
58: StackMap locals: java.io.File
StackMap stack:
new java.io.File
dup
aload 17
invokevirtual java.io.File.getParent:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 18
start local 18 59: aload 18
invokevirtual java.io.File.exists:()Z
ifne 61
60: aload 18
invokevirtual java.io.File.mkdirs:()Z
pop
61: StackMap locals: java.io.File
StackMap stack:
aconst_null
astore 19
aconst_null
astore 20
62: new java.io.FileOutputStream
dup
aload 17
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 21
start local 21 63: aload 12
aload 21
invokestatic org.eclipse.jetty.util.IO.copy:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
64: aload 21
ifnull 70
aload 21
invokevirtual java.io.OutputStream.close:()V
goto 70
StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream java.util.jar.JarEntry int java.lang.String java.lang.String java.io.File java.io.File java.lang.Throwable java.lang.Throwable java.io.OutputStream
StackMap stack: java.lang.Throwable
65: astore 19
aload 21
ifnull 66
aload 21
invokevirtual java.io.OutputStream.close:()V
end local 21 StackMap locals:
StackMap stack:
66: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
67: astore 20
aload 19
ifnonnull 68
aload 20
astore 19
goto 69
StackMap locals:
StackMap stack:
68: aload 19
aload 20
if_acmpeq 69
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
69: aload 19
athrow
70: StackMap locals:
StackMap stack:
aload 13
invokevirtual java.util.jar.JarEntry.getTime:()J
lconst_0
lcmp
iflt 72
71: aload 17
aload 13
invokevirtual java.util.jar.JarEntry.getTime:()J
invokevirtual java.io.File.setLastModified:(J)Z
pop
end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 72: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream
StackMap stack:
aload 12
invokevirtual java.util.jar.JarInputStream.getNextJarEntry:()Ljava/util/jar/JarEntry;
dup
astore 13
start local 13 73: ifnonnull 26
74: aload 6
ifnull 75
aload 6
ifnull 89
aload 6
ldc "META-INF/MANIFEST.MF"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 89
75: StackMap locals: java.util.jar.JarEntry
StackMap stack:
aload 12
invokevirtual java.util.jar.JarInputStream.getManifest:()Ljava/util/jar/Manifest;
astore 15
start local 15 76: aload 15
ifnull 89
77: new java.io.File
dup
aload 1
ldc "META-INF"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 16
start local 16 78: aload 16
invokevirtual java.io.File.mkdir:()Z
pop
79: new java.io.File
dup
aload 16
ldc "MANIFEST.MF"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 17
start local 17 80: aconst_null
astore 18
aconst_null
astore 19
81: new java.io.FileOutputStream
dup
aload 17
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 20
start local 20 82: aload 15
aload 20
invokevirtual java.util.jar.Manifest.write:(Ljava/io/OutputStream;)V
83: aload 20
ifnull 89
aload 20
invokevirtual java.io.OutputStream.close:()V
goto 89
StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream java.util.jar.JarEntry top java.util.jar.Manifest java.io.File java.io.File java.lang.Throwable java.lang.Throwable java.io.OutputStream
StackMap stack: java.lang.Throwable
84: astore 18
aload 20
ifnull 85
aload 20
invokevirtual java.io.OutputStream.close:()V
end local 20 StackMap locals:
StackMap stack:
85: aload 18
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
86: astore 19
aload 18
ifnonnull 87
aload 19
astore 18
goto 88
StackMap locals:
StackMap stack:
87: aload 18
aload 19
if_acmpeq 88
aload 18
aload 19
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
88: aload 18
athrow
end local 17 end local 16 end local 15 end local 13 89: StackMap locals: org.eclipse.jetty.util.resource.JarResource java.io.File java.lang.String int int java.net.URL java.lang.String int java.net.URLConnection java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.JarInputStream
StackMap stack:
aload 12
ifnull 92
aload 12
invokevirtual java.util.jar.JarInputStream.close:()V
goto 92
StackMap locals:
StackMap stack: java.lang.Throwable
90: astore 9
aload 12
ifnull 91
aload 12
invokevirtual java.util.jar.JarInputStream.close:()V
end local 12 StackMap locals:
StackMap stack:
91: aload 9
athrow
StackMap locals:
StackMap stack:
92: aload 11
ifnull 100
aload 11
invokevirtual java.io.InputStream.close:()V
goto 100
StackMap locals:
StackMap stack: java.lang.Throwable
93: astore 10
aload 9
ifnonnull 94
aload 10
astore 9
goto 95
StackMap locals:
StackMap stack:
94: aload 9
aload 10
if_acmpeq 95
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
95: aload 11
ifnull 96
aload 11
invokevirtual java.io.InputStream.close:()V
end local 11 StackMap locals:
StackMap stack:
96: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
97: astore 10
aload 9
ifnonnull 98
aload 10
astore 9
goto 99
StackMap locals:
StackMap stack:
98: aload 9
aload 10
if_acmpeq 99
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
99: aload 9
athrow
100: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 101 0 this Lorg/eclipse/jetty/util/resource/JarResource;
0 101 1 directory Ljava/io/File;
5 101 2 urlString Ljava/lang/String;
6 101 3 endOfJarUrl I
9 101 4 startOfJarUrl I
12 101 5 jarFileURL Ljava/net/URL;
15 101 6 subEntryName Ljava/lang/String;
18 101 7 subEntryIsDir Z
21 101 8 c Ljava/net/URLConnection;
24 96 11 is Ljava/io/InputStream;
25 91 12 jin Ljava/util/jar/JarInputStream;
26 72 13 entry Ljava/util/jar/JarEntry;
73 89 13 entry Ljava/util/jar/JarEntry;
34 35 14 shouldExtract Z
36 37 14 shouldExtract Z
38 39 14 shouldExtract Z
41 42 14 shouldExtract Z
43 72 14 shouldExtract Z
27 72 15 entryName Ljava/lang/String;
48 72 16 dotCheck Ljava/lang/String;
54 72 17 file Ljava/io/File;
59 72 18 dir Ljava/io/File;
63 66 21 fout Ljava/io/OutputStream;
76 89 15 manifest Ljava/util/jar/Manifest;
78 89 16 metaInf Ljava/io/File;
80 89 17 f Ljava/io/File;
82 85 20 fout Ljava/io/OutputStream;
Exception table:
from to target type
63 64 65 any
62 67 67 any
82 83 84 any
81 86 86 any
25 89 90 any
24 92 93 any
23 97 97 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
directory
public static org.eclipse.jetty.util.resource.Resource newJarResource(org.eclipse.jetty.util.resource.Resource);
descriptor: (Lorg/eclipse/jetty/util/resource/Resource;)Lorg/eclipse/jetty/util/resource/Resource;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.eclipse.jetty.util.resource.JarResource
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "jar:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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;
invokestatic org.eclipse.jetty.util.resource.Resource.newResource:(Ljava/lang/String;)Lorg/eclipse/jetty/util/resource/Resource;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 resource Lorg/eclipse/jetty/util/resource/Resource;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
resource
}
SourceFile: "JarResource.java"
NestMembers:
org.eclipse.jetty.util.resource.JarResource$1
InnerClasses:
org.eclipse.jetty.util.resource.JarResource$1