class com.sun.java.util.jar.pack.Driver
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.java.util.jar.pack.Driver
super_class: java.lang.Object
{
private static final java.util.ResourceBundle RESOURCE;
descriptor: Ljava/util/ResourceBundle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static boolean suppressDeprecateMsg;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.lang.String PACK200_OPTION_MAP;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "--repack $ \n -r +>- @--repack $ \n--no-gzip $ \n -g +>- @--no-gzip $ \n--strip-debug $ \n -G +>- @--strip-debug $ \n--no-keep-file-order $ \n -O +>- @--no-keep-file-order $ \n--segment-limit= *> = \n -S +> @--segment-limit= = \n--effort= *> = \n -E +> @--effort= = \n--deflate-hint= *> = \n -H +> @--deflate-hint= = \n--modification-time= *> = \n -m +> @--modification-time= = \n--pass-file= *> &\u0000 \n -P +> @--pass-file= &\u0000 \n--unknown-attribute= *> = \n -U +> @--unknown-attribute= = \n--class-attribute= *> &\u0000 \n -C +> @--class-attribute= &\u0000 \n--field-attribute= *> &\u0000 \n -F +> @--field-attribute= &\u0000 \n--method-attribute= *> &\u0000 \n -M +> @--method-attribute= &\u0000 \n--code-attribute= *> &\u0000 \n -D +> @--code-attribute= &\u0000 \n--config-file= *> . \n -f +> @--config-file= . \n--no-strip-debug !--strip-debug \n--gzip !--no-gzip \n--keep-file-order !--no-keep-file-order \n--verbose $ \n -v +>- @--verbose $ \n--quiet !--verbose \n -q +>- !--verbose \n--log-file= *> = \n -l +> @--log-file= = \n--version . \n -V +> @--version . \n--help . \n -? +> @--help . \n -h +> @--help . \n-- . \n- +? >- . \n"
private static final java.lang.String UNPACK200_OPTION_MAP;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "--deflate-hint= *> = \n -H +> @--deflate-hint= = \n--verbose $ \n -v +>- @--verbose $ \n--quiet !--verbose \n -q +>- !--verbose \n--remove-pack-file $ \n -r +>- @--remove-pack-file $ \n--log-file= *> = \n -l +> @--log-file= = \n--config-file= *> . \n -f +> @--config-file= . \n-- . \n- +? >- . \n--version . \n -V +> @--version . \n--help . \n -? +> @--help . \n -h +> @--help . \n"
private static final java.lang.String[] PACK200_PROPERTY_TO_OPTION;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] UNPACK200_PROPERTY_TO_OPTION;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lcom/sun/java/util/jar/pack/Driver;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.sun.java.util.jar.pack.Driver.$assertionsDisabled:Z
3: ldc "com.sun.java.util.jar.pack.DriverResource"
invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;)Ljava/util/ResourceBundle;
4: putstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
5: iconst_0
putstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
6: bipush 26
anewarray java.lang.String
dup
iconst_0
7: ldc "pack.segment.limit"
aastore
dup
iconst_1
ldc "--segment-limit="
aastore
dup
iconst_2
8: ldc "pack.keep.file.order"
aastore
dup
iconst_3
ldc "--no-keep-file-order"
aastore
dup
iconst_4
9: ldc "pack.effort"
aastore
dup
iconst_5
ldc "--effort="
aastore
dup
bipush 6
10: ldc "pack.deflate.hint"
aastore
dup
bipush 7
ldc "--deflate-hint="
aastore
dup
bipush 8
11: ldc "pack.modification.time"
aastore
dup
bipush 9
ldc "--modification-time="
aastore
dup
bipush 10
12: ldc "pack.pass.file."
aastore
dup
bipush 11
ldc "--pass-file="
aastore
dup
bipush 12
13: ldc "pack.unknown.attribute"
aastore
dup
bipush 13
ldc "--unknown-attribute="
aastore
dup
bipush 14
14: ldc "pack.class.attribute."
aastore
dup
bipush 15
ldc "--class-attribute="
aastore
dup
bipush 16
15: ldc "pack.field.attribute."
aastore
dup
bipush 17
ldc "--field-attribute="
aastore
dup
bipush 18
16: ldc "pack.method.attribute."
aastore
dup
bipush 19
ldc "--method-attribute="
aastore
dup
bipush 20
17: ldc "pack.code.attribute."
aastore
dup
bipush 21
ldc "--code-attribute="
aastore
dup
bipush 22
18: ldc "com.sun.java.util.jar.pack.verbose"
aastore
dup
bipush 23
ldc "--verbose"
aastore
dup
bipush 24
19: ldc "com.sun.java.util.jar.pack.strip.debug"
aastore
dup
bipush 25
ldc "--strip-debug"
aastore
20: putstatic com.sun.java.util.jar.pack.Driver.PACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
21: bipush 6
anewarray java.lang.String
dup
iconst_0
22: ldc "unpack.deflate.hint"
aastore
dup
iconst_1
ldc "--deflate-hint="
aastore
dup
iconst_2
23: ldc "com.sun.java.util.jar.pack.verbose"
aastore
dup
iconst_3
ldc "--verbose"
aastore
dup
iconst_4
24: ldc "com.sun.java.util.jar.pack.unpack.remove.packfile"
aastore
dup
iconst_5
ldc "--remove-pack-file"
aastore
25: putstatic com.sun.java.util.jar.pack.Driver.UNPACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
26: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/java/util/jar/pack/Driver;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=29, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 1: iconst_1
istore 2
start local 2 2: iconst_0
istore 3
start local 3 3: iconst_0
istore 4
start local 4 4: iconst_1
istore 5
start local 5 5: aload 1
ldc "-XDsuppress-tool-removal-message"
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
putstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
6: aconst_null
astore 6
start local 6 7: ldc "com.sun.java.util.jar.pack.verbose"
astore 7
start local 7 8: aload 1
invokeinterface java.util.List.isEmpty:()Z
ifeq 9
ldc ""
goto 10
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String
StackMap stack:
9: aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
StackMap locals:
StackMap stack: java.lang.String
10: astore 8
start local 8 11: aload 8
dup
astore 9
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 2
1333303225: 12
1559677394: 13
default: 19
}
StackMap locals: java.lang.String java.lang.String
StackMap stack:
12: aload 9
ldc "--pack"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 14
goto 19
StackMap locals:
StackMap stack:
13: aload 9
ldc "--unpack"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 16
goto 19
14: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
15: goto 19
16: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
17: iconst_0
istore 2
18: iconst_1
istore 3
end local 8 19: StackMap locals:
StackMap stack:
getstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
ifne 21
20: iload 2
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printDeprecateWarning:(ZLjava/io/PrintStream;)V
21: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 8
start local 8 22: aload 8
aload 7
aload 7
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
23: iload 2
ifeq 27
24: ldc "--repack $ \n -r +>- @--repack $ \n--no-gzip $ \n -g +>- @--no-gzip $ \n--strip-debug $ \n -G +>- @--strip-debug $ \n--no-keep-file-order $ \n -O +>- @--no-keep-file-order $ \n--segment-limit= *> = \n -S +> @--segment-limit= = \n--effort= *> = \n -E +> @--effort= = \n--deflate-hint= *> = \n -H +> @--deflate-hint= = \n--modification-time= *> = \n -m +> @--modification-time= = \n--pass-file= *> &\u0000 \n -P +> @--pass-file= &\u0000 \n--unknown-attribute= *> = \n -U +> @--unknown-attribute= = \n--class-attribute= *> &\u0000 \n -C +> @--class-attribute= &\u0000 \n--field-attribute= *> &\u0000 \n -F +> @--field-attribute= &\u0000 \n--method-attribute= *> &\u0000 \n -M +> @--method-attribute= &\u0000 \n--code-attribute= *> &\u0000 \n -D +> @--code-attribute= &\u0000 \n--config-file= *> . \n -f +> @--config-file= . \n--no-strip-debug !--strip-debug \n--gzip !--no-gzip \n--keep-file-order !--no-keep-file-order \n--verbose $ \n -v +>- @--verbose $ \n--quiet !--verbose \n -q +>- !--verbose \n--log-file= *> = \n -l +> @--log-file= = \n--version . \n -V +> @--version . \n--help . \n -? +> @--help . \n -h +> @--help . \n-- . \n- +? >- . \n"
astore 9
start local 9 25: getstatic com.sun.java.util.jar.pack.Driver.PACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
astore 10
start local 10 26: goto 29
end local 10 end local 9 27: StackMap locals: java.util.Map
StackMap stack:
ldc "--deflate-hint= *> = \n -H +> @--deflate-hint= = \n--verbose $ \n -v +>- @--verbose $ \n--quiet !--verbose \n -q +>- !--verbose \n--remove-pack-file $ \n -r +>- @--remove-pack-file $ \n--log-file= *> = \n -l +> @--log-file= = \n--config-file= *> . \n -f +> @--config-file= . \n-- . \n- +? >- . \n--version . \n -V +> @--version . \n--help . \n -? +> @--help . \n -h +> @--help . \n"
astore 9
start local 9 28: getstatic com.sun.java.util.jar.pack.Driver.UNPACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
astore 10
start local 10 29: StackMap locals: java.lang.String java.lang.String[]
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 11
start local 11 30: StackMap locals: java.util.Map
StackMap stack:
aload 1
aload 9
aload 11
invokestatic com.sun.java.util.jar.pack.Driver.parseCommandOptions:(Ljava/util/List;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
astore 12
start local 12 31: aload 11
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 13
start local 13 32: goto 76
33: StackMap locals: java.lang.String java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 14
start local 14 34: aconst_null
astore 15
start local 15 35: iconst_0
istore 16
start local 16 36: goto 41
37: StackMap locals: java.lang.String java.lang.String int
StackMap stack:
aload 14
aload 10
iconst_1
iload 16
iadd
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 40
38: aload 10
iconst_0
iload 16
iadd
aaload
astore 15
39: goto 42
40: StackMap locals:
StackMap stack:
iinc 16 2
StackMap locals:
StackMap stack:
41: iload 16
aload 10
arraylength
if_icmplt 37
end local 16 42: StackMap locals:
StackMap stack:
aload 15
ifnull 76
43: aload 11
aload 14
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 16
start local 16 44: aload 13
invokeinterface java.util.Iterator.remove:()V
45: aload 15
ldc "."
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 60
46: aload 14
ldc "--verbose"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 58
47: aload 14
ldc "="
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 58
48: aload 16
ifnull 49
iconst_1
goto 50
StackMap locals: java.lang.String
StackMap stack:
49: iconst_0
StackMap locals:
StackMap stack: int
50: istore 17
start local 17 51: aload 14
ldc "--no-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 55
52: iload 17
ifeq 53
iconst_0
goto 54
StackMap locals: int
StackMap stack:
53: iconst_1
StackMap locals:
StackMap stack: int
54: istore 17
55: StackMap locals:
StackMap stack:
iload 17
ifeq 56
ldc "true"
goto 57
StackMap locals:
StackMap stack:
56: ldc "false"
StackMap locals:
StackMap stack: java.lang.String
57: astore 16
end local 17 58: StackMap locals:
StackMap stack:
aload 8
aload 15
aload 16
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
59: goto 76
StackMap locals:
StackMap stack:
60: aload 15
ldc ".attribute."
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 68
61: aload 16
ldc "\u0000"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 20
arraylength
istore 19
iconst_0
istore 18
goto 66
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String top int int java.lang.String[]
StackMap stack:
62: aload 20
iload 18
aaload
astore 17
start local 17 63: aload 17
ldc "="
iconst_2
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 21
start local 21 64: aload 8
new java.lang.StringBuilder
dup
aload 15
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 21
iconst_0
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 21
iconst_1
aaload
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 21 end local 17 65: iinc 18 1
StackMap locals:
StackMap stack:
66: iload 18
iload 19
if_icmplt 62
67: goto 76
68: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String
StackMap stack:
iconst_1
istore 17
start local 17 69: aload 16
ldc "\u0000"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 21
arraylength
istore 20
iconst_0
istore 19
goto 75
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int top int int java.lang.String[]
StackMap stack:
70: aload 21
iload 19
aaload
astore 18
start local 18 71: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int java.lang.String int int java.lang.String[]
StackMap stack:
new java.lang.StringBuilder
dup
aload 15
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "cli."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 17
iinc 17 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 22
start local 22 72: aload 8
aload 22
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 71
73: aload 8
aload 22
aload 18
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 22 end local 18 74: iinc 19 1
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int top int int java.lang.String[]
StackMap stack:
75: iload 19
iload 20
if_icmplt 70
end local 17 end local 16 end local 15 end local 14 76: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
end local 13 77: ldc "--config-file="
aload 12
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 96
78: aload 1
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 13
start local 13 79: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 14
start local 14 80: aconst_null
astore 15
aconst_null
astore 16
81: new java.io.FileInputStream
dup
aload 13
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 17
start local 17 82: aload 14
aload 17
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
83: aload 17
ifnull 89
aload 17
invokevirtual java.io.InputStream.close:()V
goto 89
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.lang.String java.util.Properties java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.lang.Throwable
84: astore 15
aload 17
ifnull 85
aload 17
invokevirtual java.io.InputStream.close:()V
end local 17 StackMap locals:
StackMap stack:
85: aload 15
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
86: astore 16
aload 15
ifnonnull 87
aload 16
astore 15
goto 88
StackMap locals:
StackMap stack:
87: aload 15
aload 16
if_acmpeq 88
aload 15
aload 16
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
88: aload 15
athrow
89: StackMap locals:
StackMap stack:
aload 8
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 91
90: aload 14
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.util.Properties.list:(Ljava/io/PrintStream;)V
91: StackMap locals:
StackMap stack:
aload 14
invokevirtual java.util.Properties.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 16
goto 94
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.lang.String java.util.Properties top java.util.Iterator
StackMap stack:
92: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 15
start local 15 93: aload 8
aload 15
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 15
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 15 94: StackMap locals:
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 92
end local 14 end local 13 95: goto 30
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String
StackMap stack:
96: ldc "--version"
aload 12
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 101
97: getstatic java.lang.System.out:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "VERSION"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
98: ldc Lcom/sun/java/util/jar/pack/Driver;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
ldc "1.31, 07/05/05"
aastore
99: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
100: return
101: StackMap locals:
StackMap stack:
ldc "--help"
aload 12
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 110
102: iload 2
iconst_1
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
103: iconst_0
invokestatic java.lang.System.exit:(I)V
104: return
end local 12 105: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map
StackMap stack: java.lang.IllegalArgumentException
astore 12
start local 12 106: getstatic java.lang.System.err:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "BAD_ARGUMENT"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 12
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
107: iload 2
iconst_0
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
108: iconst_2
invokestatic java.lang.System.exit:(I)V
109: return
end local 12 110: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 13
goto 129
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map top java.util.Iterator
StackMap stack:
111: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 12
start local 12 112: aload 11
aload 12
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 14
start local 14 113: aload 12
dup
astore 15
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-845245370: 114
1339571416: 115
1465478252: 116
default: 125
}
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String
StackMap stack:
114: aload 15
ldc "--no-gzip"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 119
goto 125
StackMap locals:
StackMap stack:
115: aload 15
ldc "--log-file="
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 123
goto 125
StackMap locals:
StackMap stack:
116: aload 15
ldc "--repack"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 117
goto 125
117: StackMap locals:
StackMap stack:
iconst_1
istore 4
118: goto 129
119: StackMap locals:
StackMap stack:
aload 14
ifnonnull 120
iconst_1
goto 121
StackMap locals:
StackMap stack:
120: iconst_0
StackMap locals:
StackMap stack: int
121: istore 5
122: goto 129
123: StackMap locals:
StackMap stack:
aload 14
astore 6
124: goto 129
125: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
126: getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "BAD_OPTION"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
127: aload 12
aastore
dup
iconst_1
aload 11
aload 12
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
128: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 14 end local 12 129: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 111
130: aload 6
ifnull 136
aload 6
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 136
131: aload 6
ldc "-"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 134
132: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
133: goto 136
134: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map
StackMap stack:
new java.io.FileOutputStream
dup
aload 6
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
astore 12
start local 12 135: new java.io.PrintStream
dup
aload 12
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
end local 12 136: StackMap locals:
StackMap stack:
aload 8
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 137
iconst_1
goto 138
StackMap locals:
StackMap stack:
137: iconst_0
StackMap locals:
StackMap stack: int
138: istore 12
start local 12 139: ldc ""
astore 13
start local 13 140: aload 1
invokeinterface java.util.List.isEmpty:()Z
ifne 142
141: aload 1
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 13
142: StackMap locals: int java.lang.String
StackMap stack:
ldc ""
astore 14
start local 14 143: aload 1
invokeinterface java.util.List.isEmpty:()Z
ifne 145
144: aload 1
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 14
145: StackMap locals: java.lang.String
StackMap stack:
ldc ""
astore 15
start local 15 146: ldc ""
astore 16
start local 16 147: ldc ""
astore 17
start local 17 148: iload 4
ifeq 164
149: aload 13
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".pack"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 152
150: aload 13
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".pac"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 152
151: aload 13
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".gz"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 158
152: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
153: getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "BAD_REPACK_OUTPUT"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
154: aload 13
aastore
155: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
156: iload 2
iconst_0
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
157: iconst_2
invokestatic java.lang.System.exit:(I)V
158: StackMap locals:
StackMap stack:
aload 13
astore 15
159: aload 14
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 161
160: aload 15
astore 14
161: StackMap locals:
StackMap stack:
aload 15
ldc ".pack"
invokestatic com.sun.java.util.jar.pack.Driver.createTempFile:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
invokevirtual java.io.File.getPath:()Ljava/lang/String;
astore 17
162: aload 17
astore 13
163: iconst_0
istore 5
164: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.List.isEmpty:()Z
ifeq 168
165: aload 14
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".jar"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 171
166: aload 14
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".zip"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 171
167: aload 14
ldc "-"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 168
iload 2
ifeq 171
168: StackMap locals:
StackMap stack:
iload 2
iconst_0
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
169: iconst_2
invokestatic java.lang.System.exit:(I)V
170: return
171: StackMap locals:
StackMap stack:
iload 4
ifeq 173
172: iconst_1
dup
istore 3
istore 2
goto 175
173: StackMap locals:
StackMap stack:
iload 2
ifeq 175
174: iconst_0
istore 3
175: StackMap locals:
StackMap stack:
invokestatic java.util.jar.Pack200.newPacker:()Ljava/util/jar/Pack200$Packer;
astore 18
start local 18 176: invokestatic java.util.jar.Pack200.newUnpacker:()Ljava/util/jar/Pack200$Unpacker;
astore 19
start local 19 177: aload 18
invokeinterface java.util.jar.Pack200$Packer.properties:()Ljava/util/SortedMap;
aload 8
invokeinterface java.util.SortedMap.putAll:(Ljava/util/Map;)V
178: aload 19
invokeinterface java.util.jar.Pack200$Unpacker.properties:()Ljava/util/SortedMap;
aload 8
invokeinterface java.util.SortedMap.putAll:(Ljava/util/Map;)V
179: iload 4
ifeq 188
aload 15
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 188
180: aload 14
invokestatic com.sun.java.util.jar.pack.Driver.getZipComment:(Ljava/lang/String;)Ljava/lang/String;
astore 20
start local 20 181: iload 12
ifeq 183
aload 20
invokevirtual java.lang.String.isEmpty:()Z
ifne 183
182: getstatic java.lang.System.out:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "DETECTED_ZIP_COMMENT"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 20
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
183: StackMap locals: java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker java.lang.String
StackMap stack:
aload 20
ldc "PACK200"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 188
184: getstatic java.lang.System.out:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "SKIP_FOR_REPACKED"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 14
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
185: iconst_0
istore 2
186: iconst_0
istore 3
187: iconst_0
istore 4
end local 20 188: StackMap locals:
StackMap stack:
iload 2
ifeq 212
189: new java.util.jar.JarFile
dup
new java.io.File
dup
aload 14
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial java.util.jar.JarFile.<init>:(Ljava/io/File;)V
astore 20
start local 20 190: aload 13
ldc "-"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 194
191: getstatic java.lang.System.out:Ljava/io/PrintStream;
astore 21
start local 21 192: getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic java.lang.System.setOut:(Ljava/io/PrintStream;)V
193: goto 210
end local 21 StackMap locals: java.util.jar.JarFile
StackMap stack:
194: iload 5
ifeq 203
195: aload 13
ldc ".gz"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 199
196: getstatic java.lang.System.err:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "WRITE_PACK_FILE"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
197: iload 2
iconst_0
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
198: iconst_2
invokestatic java.lang.System.exit:(I)V
199: StackMap locals:
StackMap stack:
new java.io.FileOutputStream
dup
aload 13
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
astore 21
start local 21 200: new java.io.BufferedOutputStream
dup
aload 21
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 21
201: new java.util.zip.GZIPOutputStream
dup
aload 21
invokespecial java.util.zip.GZIPOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 21
202: goto 210
end local 21 203: StackMap locals:
StackMap stack:
aload 13
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".pack"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 208
204: aload 13
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc ".pac"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 208
205: getstatic java.lang.System.err:Ljava/io/PrintStream;
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "WRITE_PACKGZ_FILE"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
206: iload 2
iconst_0
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
207: iconst_2
invokestatic java.lang.System.exit:(I)V
208: StackMap locals:
StackMap stack:
new java.io.FileOutputStream
dup
aload 13
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
astore 21
start local 21 209: new java.io.BufferedOutputStream
dup
aload 21
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 21
210: StackMap locals: java.io.OutputStream
StackMap stack:
aload 18
aload 20
aload 21
invokeinterface java.util.jar.Pack200$Packer.pack:(Ljava/util/jar/JarFile;Ljava/io/OutputStream;)V
211: aload 21
invokevirtual java.io.OutputStream.close:()V
end local 21 end local 20 212: StackMap locals:
StackMap stack:
iload 4
ifeq 219
aload 15
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 219
213: aload 14
ldc ".bak"
invokestatic com.sun.java.util.jar.pack.Driver.createTempFile:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
astore 20
start local 20 214: aload 20
invokevirtual java.io.File.delete:()Z
pop
215: new java.io.File
dup
aload 14
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
aload 20
invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
istore 21
start local 21 216: iload 21
ifne 218
217: new java.lang.Error
dup
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "SKIP_FOR_MOVE_FAILED"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 16
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
218: StackMap locals: java.io.File int
StackMap stack:
aload 20
invokevirtual java.io.File.getPath:()Ljava/lang/String;
astore 16
end local 21 end local 20 219: StackMap locals:
StackMap stack:
iload 3
ifeq 245
220: aload 13
ldc "-"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 223
221: getstatic java.lang.System.in:Ljava/io/InputStream;
astore 20
start local 20 222: goto 224
end local 20 223: StackMap locals:
StackMap stack:
new java.io.FileInputStream
dup
new java.io.File
dup
aload 13
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 20
start local 20 224: StackMap locals: java.io.InputStream
StackMap stack:
new java.io.BufferedInputStream
dup
aload 20
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
astore 21
start local 21 225: aload 21
astore 20
226: aload 21
invokestatic com.sun.java.util.jar.pack.Utils.readMagic:(Ljava/io/BufferedInputStream;)[B
invokestatic com.sun.java.util.jar.pack.Utils.isGZIPMagic:([B)Z
ifeq 228
227: new java.util.zip.GZIPInputStream
dup
aload 20
invokespecial java.util.zip.GZIPInputStream.<init>:(Ljava/io/InputStream;)V
astore 20
228: StackMap locals: java.io.BufferedInputStream
StackMap stack:
aload 15
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 229
aload 14
goto 230
StackMap locals:
StackMap stack:
229: aload 15
StackMap locals:
StackMap stack: java.lang.String
230: astore 22
start local 22 231: aload 22
ldc "-"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 234
232: getstatic java.lang.System.out:Ljava/io/PrintStream;
astore 23
start local 23 233: goto 235
end local 23 234: StackMap locals: java.lang.String
StackMap stack:
new java.io.FileOutputStream
dup
aload 22
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
astore 23
start local 23 235: StackMap locals: java.io.OutputStream
StackMap stack:
new java.io.BufferedOutputStream
dup
aload 23
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 23
236: aconst_null
astore 24
aconst_null
astore 25
237: new java.util.jar.JarOutputStream
dup
aload 23
invokespecial java.util.jar.JarOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 26
start local 26 238: aload 19
aload 20
aload 26
invokeinterface java.util.jar.Pack200$Unpacker.unpack:(Ljava/io/InputStream;Ljava/util/jar/JarOutputStream;)V
239: aload 26
ifnull 245
aload 26
invokevirtual java.util.jar.JarOutputStream.close:()V
goto 245
StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker java.io.InputStream java.io.BufferedInputStream java.lang.String java.io.OutputStream java.lang.Throwable java.lang.Throwable java.util.jar.JarOutputStream
StackMap stack: java.lang.Throwable
240: astore 24
aload 26
ifnull 241
aload 26
invokevirtual java.util.jar.JarOutputStream.close:()V
end local 26 StackMap locals:
StackMap stack:
241: aload 24
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
242: astore 25
aload 24
ifnonnull 243
aload 25
astore 24
goto 244
StackMap locals:
StackMap stack:
243: aload 24
aload 25
if_acmpeq 244
aload 24
aload 25
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
244: aload 24
athrow
end local 23 end local 22 end local 21 end local 20 245: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker
StackMap stack:
aload 16
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 257
246: new java.io.File
dup
aload 16
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.delete:()Z
pop
247: ldc ""
astore 16
248: goto 257
StackMap locals:
StackMap stack: java.lang.Throwable
249: astore 27
250: aload 16
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 254
251: new java.io.File
dup
aload 14
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 28
start local 28 252: aload 28
invokevirtual java.io.File.delete:()Z
pop
253: new java.io.File
dup
aload 16
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
aload 28
invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
pop
end local 28 254: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker top top top top top top top java.lang.Throwable
StackMap stack:
aload 17
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 256
255: new java.io.File
dup
aload 17
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.delete:()Z
pop
256: StackMap locals:
StackMap stack:
aload 27
athrow
257: StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker
StackMap stack:
aload 16
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 261
258: new java.io.File
dup
aload 14
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 28
start local 28 259: aload 28
invokevirtual java.io.File.delete:()Z
pop
260: new java.io.File
dup
aload 16
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
aload 28
invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
pop
end local 28 261: StackMap locals:
StackMap stack:
aload 17
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 263
262: new java.io.File
dup
aload 17
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.delete:()Z
pop
263: StackMap locals:
StackMap stack:
return
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 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 264 0 ava [Ljava/lang/String;
1 264 1 av Ljava/util/List<Ljava/lang/String;>;
2 264 2 doPack Z
3 264 3 doUnpack Z
4 264 4 doRepack Z
5 264 5 doZip Z
7 264 6 logFile Ljava/lang/String;
8 264 7 verboseProp Ljava/lang/String;
11 19 8 arg0 Ljava/lang/String;
22 264 8 engProps Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
25 27 9 optionMap Ljava/lang/String;
28 264 9 optionMap Ljava/lang/String;
26 27 10 propTable [Ljava/lang/String;
29 264 10 propTable [Ljava/lang/String;
30 264 11 avProps Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
31 105 12 state Ljava/lang/String;
32 77 13 opti Ljava/util/Iterator<Ljava/lang/String;>;
34 76 14 opt Ljava/lang/String;
35 76 15 prop Ljava/lang/String;
36 42 16 i I
44 76 16 val Ljava/lang/String;
51 58 17 flag Z
63 65 17 val1 Ljava/lang/String;
64 65 21 val2 [Ljava/lang/String;
69 76 17 idx I
71 74 18 val1 Ljava/lang/String;
72 74 22 prop1 Ljava/lang/String;
79 95 13 propFile Ljava/lang/String;
80 95 14 fileProps Ljava/util/Properties;
82 85 17 propIn Ljava/io/InputStream;
93 94 15 me Ljava/util/Map$Entry<Ljava/lang/Object;Ljava/lang/Object;>;
106 110 12 ee Ljava/lang/IllegalArgumentException;
112 129 12 opt Ljava/lang/String;
113 129 14 val Ljava/lang/String;
135 136 12 log Ljava/io/OutputStream;
139 264 12 verbose Z
140 264 13 packfile Ljava/lang/String;
143 264 14 jarfile Ljava/lang/String;
146 264 15 newfile Ljava/lang/String;
147 264 16 bakfile Ljava/lang/String;
148 264 17 tmpfile Ljava/lang/String;
176 264 18 jpack Ljava/util/jar/Pack200$Packer;
177 264 19 junpack Ljava/util/jar/Pack200$Unpacker;
181 188 20 zipc Ljava/lang/String;
190 212 20 in Ljava/util/jar/JarFile;
192 194 21 out Ljava/io/OutputStream;
200 203 21 out Ljava/io/OutputStream;
209 212 21 out Ljava/io/OutputStream;
214 219 20 bakf Ljava/io/File;
216 219 21 okBackup Z
222 223 20 in Ljava/io/InputStream;
224 245 20 in Ljava/io/InputStream;
225 245 21 inBuf Ljava/io/BufferedInputStream;
231 245 22 outfile Ljava/lang/String;
233 234 23 fileOut Ljava/io/OutputStream;
235 245 23 fileOut Ljava/io/OutputStream;
238 241 26 out Ljava/util/jar/JarOutputStream;
252 254 28 jarFile Ljava/io/File;
259 261 28 jarFile Ljava/io/File;
Exception table:
from to target type
82 83 84 any
81 86 86 any
30 100 105 Class java.lang.IllegalArgumentException
101 104 105 Class java.lang.IllegalArgumentException
238 239 240 any
237 242 242 any
188 249 249 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ava
private static java.io.File createTempFile(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: new java.io.File
dup
aload 0
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.io.File.getName:()Ljava/lang/String;
astore 3
start local 3 2: aload 3
invokevirtual java.lang.String.length:()I
iconst_3
if_icmpge 3
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "tmp"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
3: StackMap locals: java.io.File java.lang.String
StackMap stack:
aload 2
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
ifnonnull 5
aload 1
ldc ".bak"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: new java.io.File
dup
ldc "."
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
goto 6
5: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
6: StackMap locals:
StackMap stack: java.io.File
astore 4
start local 4 7: aload 4
ifnonnull 9
8: aload 3
aload 1
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempFile:(Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
goto 10
9: StackMap locals: java.io.File
StackMap stack:
aload 4
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
aload 3
aload 1
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempFile:(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
10: StackMap locals:
StackMap stack: java.nio.file.Path
astore 5
start local 5 11: aload 5
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
areturn
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 12 0 basefile Ljava/lang/String;
0 12 1 suffix Ljava/lang/String;
1 12 2 base Ljava/io/File;
2 12 3 prefix Ljava/lang/String;
7 12 4 where Ljava/io/File;
11 12 5 tmpfile Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
basefile
suffix
private static void printDeprecateWarning(boolean, java.io.PrintStream);
descriptor: (ZLjava/io/PrintStream;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: iload 0
ifeq 1
ldc "pack200"
goto 2
StackMap locals:
StackMap stack:
1: ldc "unpack200"
StackMap locals:
StackMap stack: java.lang.String
2: astore 2
start local 2 3: aload 1
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "DEPRECATED"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 doPack Z
0 5 1 out Ljava/io/PrintStream;
3 5 2 prog Ljava/lang/String;
MethodParameters:
Name Flags
doPack
out
private static void printUsage(boolean, boolean, java.io.PrintStream);
descriptor: (ZZLjava/io/PrintStream;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifeq 1
ldc "pack200"
goto 2
StackMap locals:
StackMap stack:
1: ldc "unpack200"
StackMap locals:
StackMap stack: java.lang.String
2: astore 3
start local 3 3: getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "PACK_HELP"
invokevirtual java.util.ResourceBundle.getObject:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String[]
astore 4
start local 4 4: getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "UNPACK_HELP"
invokevirtual java.util.ResourceBundle.getObject:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String[]
astore 5
start local 5 5: iload 0
ifeq 6
aload 4
goto 7
StackMap locals: java.lang.String java.lang.String[] java.lang.String[]
StackMap stack:
6: aload 5
StackMap locals:
StackMap stack: java.lang.String[]
7: astore 6
start local 6 8: iconst_0
istore 7
start local 7 9: goto 15
10: StackMap locals: java.lang.String[] int
StackMap stack:
aload 2
aload 6
iload 7
aaload
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
11: iload 1
ifne 14
12: aload 2
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "MORE_INFO"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
13: goto 16
14: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
15: iload 7
aload 6
arraylength
if_icmplt 10
end local 7 16: StackMap locals:
StackMap stack:
iload 1
ifeq 18
getstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
ifne 18
17: iload 0
aload 2
invokestatic com.sun.java.util.jar.pack.Driver.printDeprecateWarning:(ZLjava/io/PrintStream;)V
18: StackMap locals:
StackMap stack:
return
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 19 0 doPack Z
0 19 1 full Z
0 19 2 out Ljava/io/PrintStream;
3 19 3 prog Ljava/lang/String;
4 19 4 packUsage [Ljava/lang/String;
5 19 5 unpackUsage [Ljava/lang/String;
8 19 6 usage [Ljava/lang/String;
9 16 7 i I
MethodParameters:
Name Flags
doPack
full
out
private static java.lang.String (java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=1
start local 0 0: sipush 1000
newarray 8
astore 1
start local 1 1: new java.io.File
dup
aload 0
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.length:()J
lstore 2
start local 2 2: lload 2
lconst_0
lcmp
ifgt 3
ldc ""
areturn
3: StackMap locals: byte[] long
StackMap stack:
lconst_0
lload 2
aload 1
arraylength
i2l
lsub
invokestatic java.lang.Math.max:(JJ)J
lstore 4
start local 4 4: aconst_null
astore 6
aconst_null
astore 7
5: new java.io.FileInputStream
dup
new java.io.File
dup
aload 0
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 8
start local 8 6: aload 8
lload 4
invokevirtual java.io.InputStream.skip:(J)J
pop2
7: aload 8
aload 1
invokevirtual java.io.InputStream.read:([B)I
pop
8: aload 1
arraylength
iconst_4
isub
istore 9
start local 9 9: goto 20
10: StackMap locals: java.lang.String byte[] long long java.lang.Throwable java.lang.Throwable java.io.InputStream int
StackMap stack:
aload 1
iload 9
iconst_0
iadd
baload
bipush 80
if_icmpne 19
aload 1
iload 9
iconst_1
iadd
baload
bipush 75
if_icmpne 19
11: aload 1
iload 9
iconst_2
iadd
baload
iconst_5
if_icmpne 19
aload 1
iload 9
iconst_3
iadd
baload
bipush 6
if_icmpne 19
12: iinc 9 22
13: iload 9
aload 1
arraylength
if_icmpge 17
14: new java.lang.String
dup
aload 1
iload 9
aload 1
arraylength
iload 9
isub
ldc "UTF8"
invokespecial java.lang.String.<init>:([BIILjava/lang/String;)V
15: aload 8
ifnull 16
aload 8
invokevirtual java.io.InputStream.close:()V
16: StackMap locals:
StackMap stack: java.lang.String
areturn
17: StackMap locals:
StackMap stack:
aload 8
ifnull 18
aload 8
invokevirtual java.io.InputStream.close:()V
18: StackMap locals:
StackMap stack:
ldc ""
areturn
19: StackMap locals:
StackMap stack:
iinc 9 -1
StackMap locals:
StackMap stack:
20: iload 9
ifge 10
end local 9 21: aload 8
ifnull 22
aload 8
invokevirtual java.io.InputStream.close:()V
22: StackMap locals:
StackMap stack:
ldc ""
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 6
24: aload 8
ifnull 25
aload 8
invokevirtual java.io.InputStream.close:()V
end local 8 StackMap locals:
StackMap stack:
25: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
26: astore 7
aload 6
ifnonnull 27
aload 7
astore 6
goto 28
StackMap locals:
StackMap stack:
27: aload 6
aload 7
if_acmpeq 28
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
28: aload 6
athrow
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 jarfile Ljava/lang/String;
1 29 1 tail [B
2 29 2 filelen J
4 29 4 skiplen J
6 25 8 in Ljava/io/InputStream;
9 21 9 i I
Exception table:
from to target type
6 15 23 any
19 21 23 any
5 16 26 any
17 18 26 any
19 22 26 any
23 26 26 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
jarfile
private static java.lang.String parseCommandOptions(java.util.List<java.lang.String>, java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
descriptor: (Ljava/util/List;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=29, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: new java.util.TreeMap
dup
invokespecial java.util.TreeMap.<init>:()V
astore 4
start local 4 2: aload 1
ldc "\n"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 16
StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap top int int java.lang.String[]
StackMap stack:
3: aload 8
iload 6
aaload
astore 5
start local 5 4: aload 5
ldc "\\p{Space}+"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 9
start local 9 5: aload 9
arraylength
ifne 6
goto 15
6: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.lang.String int int java.lang.String[] java.lang.String[]
StackMap stack:
aload 9
iconst_0
aaload
astore 10
start local 10 7: aload 9
iconst_0
ldc ""
aastore
8: aload 10
invokevirtual java.lang.String.isEmpty:()Z
ifeq 11
aload 9
arraylength
iconst_1
if_icmplt 11
9: aload 9
iconst_1
aaload
astore 10
10: aload 9
iconst_1
ldc ""
aastore
11: StackMap locals: java.lang.String
StackMap stack:
aload 10
invokevirtual java.lang.String.length:()I
ifne 12
goto 15
12: StackMap locals:
StackMap stack:
aload 4
aload 10
aload 9
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String[]
astore 11
start local 11 13: aload 11
ifnull 15
14: new java.lang.RuntimeException
dup
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "DUPLICATE_OPTION"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
invokevirtual java.lang.String.trim:()Ljava/lang/String;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 11 end local 10 end local 9 end local 5 15: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap top int int java.lang.String[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
16: iload 6
iload 7
if_icmplt 3
17: aload 0
invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
astore 5
start local 5 18: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
invokevirtual java.util.ArrayList.listIterator:()Ljava/util/ListIterator;
astore 6
start local 6 19: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator
StackMap stack:
aload 6
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifeq 23
20: aload 6
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 21: aload 6
invokeinterface java.util.ListIterator.remove:()V
22: goto 25
end local 7 StackMap locals:
StackMap stack:
23: aload 5
invokeinterface java.util.ListIterator.hasNext:()Z
ifeq 133
24: aload 5
invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 25: StackMap locals: java.lang.String
StackMap stack:
aload 7
invokevirtual java.lang.String.length:()I
istore 8
start local 8 26: StackMap locals: int
StackMap stack:
aload 7
iconst_0
iload 8
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 9
start local 9 27: aload 4
aload 9
invokevirtual java.util.TreeMap.containsKey:(Ljava/lang/Object;)Z
ifeq 28
goto 36
28: StackMap locals: java.lang.String
StackMap stack:
iload 8
ifne 29
goto 132
29: StackMap locals:
StackMap stack:
aload 4
aload 9
invokevirtual java.util.TreeMap.headMap:(Ljava/lang/Object;)Ljava/util/SortedMap;
astore 10
start local 10 30: aload 10
invokeinterface java.util.SortedMap.isEmpty:()Z
ifeq 31
iconst_0
goto 32
StackMap locals: java.util.SortedMap
StackMap stack:
31: aload 10
invokeinterface java.util.SortedMap.lastKey:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.String.length:()I
StackMap locals:
StackMap stack: int
32: istore 11
start local 11 33: iload 11
iload 8
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 8
34: aload 7
iconst_0
iload 8
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 9
end local 11 end local 10 end local 9 35: goto 26
start local 9 36: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.lang.String.intern:()Ljava/lang/String;
astore 9
37: getstatic com.sun.java.util.jar.pack.Driver.$assertionsDisabled:Z
ifne 38
aload 7
aload 9
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 38
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
38: StackMap locals:
StackMap stack:
getstatic com.sun.java.util.jar.pack.Driver.$assertionsDisabled:Z
ifne 39
aload 9
invokevirtual java.lang.String.length:()I
iload 8
if_icmpeq 39
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
39: StackMap locals:
StackMap stack:
aload 7
iload 8
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 10
start local 10 40: iconst_0
istore 11
start local 11 41: iconst_0
istore 12
start local 12 42: aload 6
invokeinterface java.util.ListIterator.nextIndex:()I
istore 13
start local 13 43: aload 4
aload 9
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String[]
astore 14
start local 14 44: aload 14
dup
astore 18
arraylength
istore 17
iconst_0
istore 16
goto 121
StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] top int int java.lang.String[]
StackMap stack:
45: aload 18
iload 16
aaload
astore 15
start local 15 46: aload 15
invokevirtual java.lang.String.length:()I
ifne 47
goto 120
47: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[]
StackMap stack:
aload 15
ldc "#"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 48
goto 122
48: StackMap locals:
StackMap stack:
iconst_0
istore 19
start local 19 49: aload 15
iload 19
iinc 19 1
invokevirtual java.lang.String.charAt:(I)C
istore 20
start local 20 50: iload 20
tableswitch { // 42 - 43
42: 56
43: 51
default: 59
}
51: StackMap locals: int int
StackMap stack:
aload 10
invokevirtual java.lang.String.isEmpty:()Z
ifeq 52
iconst_0
goto 53
StackMap locals:
StackMap stack:
52: iconst_1
StackMap locals:
StackMap stack: int
53: istore 21
start local 21 54: aload 15
iload 19
iinc 19 1
invokevirtual java.lang.String.charAt:(I)C
istore 20
55: goto 62
end local 21 56: StackMap locals:
StackMap stack:
iconst_1
istore 21
start local 21 57: aload 15
iload 19
iinc 19 1
invokevirtual java.lang.String.charAt:(I)C
istore 20
58: goto 62
end local 21 59: StackMap locals:
StackMap stack:
aload 10
invokevirtual java.lang.String.length:()I
ifne 60
iconst_1
goto 61
StackMap locals:
StackMap stack:
60: iconst_0
StackMap locals:
StackMap stack: int
61: istore 21
start local 21 62: StackMap locals: int
StackMap stack:
iload 21
ifne 63
goto 120
63: StackMap locals:
StackMap stack:
aload 15
iload 19
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 22
start local 22 64: iload 20
lookupswitch { // 8
33: 79
36: 86
38: 97
46: 65
61: 97
62: 76
63: 69
64: 74
default: 119
}
65: StackMap locals: java.lang.String
StackMap stack:
aload 22
invokevirtual java.lang.String.isEmpty:()Z
ifeq 66
aload 9
goto 67
StackMap locals:
StackMap stack:
66: aload 22
invokevirtual java.lang.String.intern:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
67: astore 3
68: goto 133
69: StackMap locals:
StackMap stack:
aload 22
invokevirtual java.lang.String.isEmpty:()Z
ifeq 70
aload 7
goto 71
StackMap locals:
StackMap stack:
70: aload 22
invokevirtual java.lang.String.intern:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
71: astore 3
72: iconst_1
istore 12
73: goto 122
74: StackMap locals:
StackMap stack:
aload 22
invokevirtual java.lang.String.intern:()Ljava/lang/String;
astore 9
75: goto 120
76: StackMap locals:
StackMap stack:
aload 6
new java.lang.StringBuilder
dup
aload 22
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.ListIterator.add:(Ljava/lang/Object;)V
77: ldc ""
astore 10
78: goto 120
79: StackMap locals:
StackMap stack:
aload 22
invokevirtual java.lang.String.isEmpty:()Z
ifeq 80
aload 9
goto 81
StackMap locals:
StackMap stack:
80: aload 22
invokevirtual java.lang.String.intern:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
81: astore 23
start local 23 82: aload 2
aload 23
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
83: aload 2
aload 23
aconst_null
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
84: iconst_1
istore 11
85: goto 120
end local 23 86: StackMap locals:
StackMap stack:
aload 22
invokevirtual java.lang.String.isEmpty:()Z
ifne 89
87: aload 22
astore 24
start local 24 88: goto 94
end local 24 89: StackMap locals:
StackMap stack:
aload 2
aload 9
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 25
start local 25 90: aload 25
ifnull 91
aload 25
invokevirtual java.lang.String.length:()I
ifne 93
91: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top top java.lang.String
StackMap stack:
ldc "1"
astore 24
start local 24 92: goto 94
end local 24 93: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iconst_1
aload 25
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 24
end local 25 start local 24 94: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top java.lang.String
StackMap stack:
aload 2
aload 9
aload 24
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
95: iconst_1
istore 11
96: goto 120
end local 24 97: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String
StackMap stack:
iload 20
bipush 38
if_icmpne 98
iconst_1
goto 99
StackMap locals:
StackMap stack:
98: iconst_0
StackMap locals:
StackMap stack: int
99: istore 25
start local 25 100: aload 6
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifeq 104
101: aload 6
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.lang.String
astore 26
start local 26 102: aload 6
invokeinterface java.util.ListIterator.remove:()V
103: goto 110
end local 26 StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top top int
StackMap stack:
104: aload 5
invokeinterface java.util.ListIterator.hasNext:()Z
ifeq 107
105: aload 5
invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 26
start local 26 106: goto 110
end local 26 107: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " ?"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
108: iconst_1
istore 12
109: goto 122
start local 26 110: StackMap locals: java.lang.String
StackMap stack:
iload 25
ifeq 116
111: aload 2
aload 9
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 27
start local 27 112: aload 27
ifnull 116
113: aload 22
astore 28
start local 28 114: aload 28
invokevirtual java.lang.String.length:()I
ifne 115
ldc " "
astore 28
115: StackMap locals: java.lang.String java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 27
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 22
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 26
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 26
end local 28 end local 27 116: StackMap locals:
StackMap stack:
aload 2
aload 9
aload 26
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
117: iconst_1
istore 11
118: goto 120
end local 26 end local 25 119: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String
StackMap stack:
new java.lang.RuntimeException
dup
getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
ldc "BAD_SPEC"
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 9
aastore
dup
iconst_1
aload 15
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 22 end local 21 end local 20 end local 19 end local 15 120: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 16 1
StackMap locals:
StackMap stack:
121: iload 16
iload 17
if_icmplt 45
122: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[]
StackMap stack:
iload 11
ifeq 126
iload 12
ifne 126
123: goto 19
124: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
pop
125: aload 6
invokeinterface java.util.ListIterator.remove:()V
126: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.ListIterator.nextIndex:()I
iload 13
if_icmpgt 124
127: iload 12
ifeq 129
128: new java.lang.IllegalArgumentException
dup
aload 3
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
129: StackMap locals:
StackMap stack:
iload 8
ifne 131
130: goto 132
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 131: StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int
StackMap stack:
iinc 8 -1
goto 26
end local 8 132: StackMap locals:
StackMap stack:
aload 6
aload 7
invokeinterface java.util.ListIterator.add:(Ljava/lang/Object;)V
end local 7 133: StackMap locals:
StackMap stack:
aload 0
iconst_0
aload 5
invokeinterface java.util.ListIterator.nextIndex:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
invokeinterface java.util.List.clear:()V
134: goto 136
135: StackMap locals:
StackMap stack:
aload 0
iconst_0
aload 6
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.lang.String
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
136: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifne 135
137: aload 3
areturn
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 138 0 args Ljava/util/List<Ljava/lang/String;>;
0 138 1 options Ljava/lang/String;
0 138 2 properties Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
1 138 3 resultString Ljava/lang/String;
2 138 4 optmap Ljava/util/TreeMap<Ljava/lang/String;[Ljava/lang/String;>;
4 15 5 optline Ljava/lang/String;
5 15 9 words [Ljava/lang/String;
7 15 10 opt Ljava/lang/String;
13 15 11 prevWords [Ljava/lang/String;
18 138 5 argp Ljava/util/ListIterator<Ljava/lang/String;>;
19 138 6 pbp Ljava/util/ListIterator<Ljava/lang/String;>;
21 23 7 arg Ljava/lang/String;
25 133 7 arg Ljava/lang/String;
26 132 8 optlen I
27 35 9 opt Ljava/lang/String;
36 131 9 opt Ljava/lang/String;
30 35 10 pfxmap Ljava/util/SortedMap<Ljava/lang/String;[Ljava/lang/String;>;
33 35 11 len I
40 131 10 val Ljava/lang/String;
41 131 11 didAction Z
42 131 12 isError Z
43 131 13 pbpMark I
44 131 14 specs [Ljava/lang/String;
46 120 15 spec Ljava/lang/String;
49 120 19 sidx I
50 120 20 specop C
54 56 21 ok Z
57 59 21 ok Z
62 120 21 ok Z
64 120 22 specarg Ljava/lang/String;
82 86 23 negopt Ljava/lang/String;
88 89 24 boolval Ljava/lang/String;
92 93 24 boolval Ljava/lang/String;
94 97 24 boolval Ljava/lang/String;
90 94 25 old Ljava/lang/String;
100 119 25 append Z
102 104 26 strval Ljava/lang/String;
106 107 26 strval Ljava/lang/String;
110 119 26 strval Ljava/lang/String;
112 116 27 old Ljava/lang/String;
114 116 28 delim Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljava/lang/String;
MethodParameters:
Name Flags
args
options
properties
}
SourceFile: "Driver.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
public abstract Packer = java.util.jar.Pack200$Packer of java.util.jar.Pack200
public abstract Unpacker = java.util.jar.Pack200$Unpacker of java.util.jar.Pack200