public class org.graalvm.component.installer.persist.DirectoryStorage implements org.graalvm.component.installer.model.ManagementStorage
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.component.installer.persist.DirectoryStorage
super_class: java.lang.Object
{
public static final java.lang.String META_LICENSE_FILE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "LICENSE_PATH"
private static final java.lang.String PATH_RELEASE_FILE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "release"
private static final java.lang.String COMPONENT_FILE_SUFFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: ".component"
private static final java.lang.String NATIVE_COMPONENT_FILE_SUFFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: ".meta"
private static final java.lang.String LIST_FILE_SUFFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: ".filelist"
private static final java.lang.String PATH_REPLACED_FILES;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "replaced-files.properties"
private static final java.lang.String LICENSE_DIR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "licenses"
private static final java.lang.String LICENSE_CONTENTS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "licenses/{0}"
private static final java.lang.String LICENSE_CONTENTS_ID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "licenses/{0}.id"
static final java.lang.String LICENSE_FILE_TEMPLATE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "licenses/{0}.accepted/_all"
private static final java.lang.String BUNDLE_REQUIRED_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Bundle-RequireCapability-"
private static final java.lang.String BUNDLE_PROVIDED_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Bundle-ProvideCapability-"
protected final java.nio.file.Path registryPath;
descriptor: Ljava/nio/file/Path;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.nio.file.Path graalHomePath;
descriptor: Ljava/nio/file/Path;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private final org.graalvm.component.installer.Feedback feedback;
descriptor: Lorg/graalvm/component/installer/Feedback;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.Properties loaded;
descriptor: Ljava/util/Properties;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.component.installer.model.ComponentInfo graalCore;
descriptor: Lorg/graalvm/component/installer/model/ComponentInfo;
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String GRAALVM_SOURCE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "source"
private static final java.util.regex.Pattern SOURCE_REVISION;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String REVISION_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "source_"
private static final java.lang.String[] REQUIRED_ATTRIBUTES;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String ENTERPRISE_EDITION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "ee"
private static final java.lang.String VM_ENTERPRISE_COMPONENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "vm-enterprise:"
private java.lang.String javaVersion;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.component.installer.Config config;
descriptor: Lorg/graalvm/component/installer/Config;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc "\\b([a-z-._]+):([0-9a-f]+)\\b"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic org.graalvm.component.installer.persist.DirectoryStorage.SOURCE_REVISION:Ljava/util/regex/Pattern;
1: iconst_3
anewarray java.lang.String
dup
iconst_0
2: ldc "graalvm_version"
aastore
dup
iconst_1
3: ldc "os_name"
aastore
dup
iconst_2
4: ldc "os_arch"
aastore
5: putstatic org.graalvm.component.installer.persist.DirectoryStorage.REQUIRED_ATTRIBUTES:[Ljava/lang/String;
6: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.component.installer.Feedback, java.nio.file.Path, java.nio.file.Path);
descriptor: (Lorg/graalvm/component/installer/Feedback;Ljava/nio/file/Path;Ljava/nio/file/Path;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
2: aload 0
aload 2
putfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
3: aload 0
aload 3
putfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
4: aload 0
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
invokestatic org.graalvm.component.installer.SystemUtils.getJavaMajorVersion:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.graalvm.component.installer.persist.DirectoryStorage.javaVersion:Ljava/lang/String;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 6 1 feedback Lorg/graalvm/component/installer/Feedback;
0 6 2 storagePath Ljava/nio/file/Path;
0 6 3 graalHomePath Ljava/nio/file/Path;
MethodParameters:
Name Flags
feedback
storagePath
graalHomePath
public org.graalvm.component.installer.Config getConfig();
descriptor: ()Lorg/graalvm/component/installer/Config;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.config:Lorg/graalvm/component/installer/Config;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
public void setConfig(org.graalvm.component.installer.Config);
descriptor: (Lorg/graalvm/component/installer/Config;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.graalvm.component.installer.persist.DirectoryStorage.config:Lorg/graalvm/component/installer/Config;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 2 1 config Lorg/graalvm/component/installer/Config;
MethodParameters:
Name Flags
config
public java.lang.String getJavaVersion();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.javaVersion:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
public void setJavaVersion(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.graalvm.component.installer.persist.DirectoryStorage.javaVersion:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 2 1 javaVersion Ljava/lang/String;
MethodParameters:
Name Flags
javaVersion
public java.util.Map<java.lang.String, java.lang.String> loadGraalVersionInfo();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
ldc "release"
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonString:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 1
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.newInputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream;
astore 4
start local 4 3: aload 0
aload 4
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.load:(Ljava/io/InputStream;)Ljava/util/Map;
4: aload 4
ifnull 5
aload 4
invokevirtual java.io.InputStream.close:()V
5: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.util.Map
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 2
7: aload 4
ifnull 8
aload 4
invokevirtual java.io.InputStream.close:()V
end local 4 StackMap locals:
StackMap stack:
8: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 3
aload 2
ifnonnull 10
aload 3
astore 2
goto 11
StackMap locals:
StackMap stack:
10: aload 2
aload 3
if_acmpeq 11
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
11: aload 2
athrow
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path
StackMap stack: java.io.IOException
12: astore 2
start local 2 13: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERROR_ReadingRealeaseFile"
aload 2
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
1 14 1 graalVersionFile Ljava/nio/file/Path;
3 8 4 istm Ljava/io/InputStream;
13 14 2 ex Ljava/io/IOException;
Exception table:
from to target type
3 4 6 any
2 5 9 any
6 9 9 any
1 5 12 Class java.io.IOException
6 12 12 Class java.io.IOException
Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
public org.graalvm.component.installer.Version getGraalVMVersion();
descriptor: ()Lorg/graalvm/component/installer/Version;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.loadGraalVersionInfo:()Ljava/util/Map;
ldc "graalvm_version"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 1: aload 1
invokestatic org.graalvm.component.installer.Version.fromString:(Ljava/lang/String;)Lorg/graalvm/component/installer/Version;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
1 2 1 s Ljava/lang/String;
private java.util.Map<java.lang.String, java.lang.String> load(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 2
start local 2 1: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 3
start local 3 2: aload 3
aload 1
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
3: aconst_null
astore 4
start local 4 4: aload 3
invokevirtual java.util.Properties.propertyNames:()Ljava/util/Enumeration;
invokestatic java.util.Collections.list:(Ljava/util/Enumeration;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 6
goto 20
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.InputStream java.util.Map java.util.Properties java.lang.String top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 6: aload 3
aload 5
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 7: aload 5
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 8
start local 8 8: aload 7
invokevirtual java.lang.String.isEmpty:()Z
ifne 10
aload 7
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 10
aload 7
invokevirtual java.lang.String.length:()I
iconst_1
if_icmple 10
aload 7
aload 7
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 10
9: aload 7
iconst_1
aload 7
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 7
10: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.InputStream java.util.Map java.util.Properties java.lang.String java.lang.String java.util.Iterator java.lang.String java.lang.String
StackMap stack:
ldc "source"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
11: getstatic org.graalvm.component.installer.persist.DirectoryStorage.SOURCE_REVISION:Ljava/util/regex/Pattern;
aload 7
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 9
start local 9 12: aload 7
astore 4
13: goto 17
14: StackMap locals: java.util.regex.Matcher
StackMap stack:
aload 9
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
ifnull 15
aload 9
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
ifnull 15
aload 9
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifne 15
aload 9
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 16
15: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERROR_ReleaseSourceRevisions"
aconst_null
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
16: StackMap locals:
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc "source_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 9
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
17: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.util.regex.Matcher.find:()Z
ifne 14
end local 9 18: goto 20
19: StackMap locals:
StackMap stack:
aload 2
aload 8
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 5 20: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.InputStream java.util.Map java.util.Properties java.lang.String top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
21: getstatic org.graalvm.component.installer.persist.DirectoryStorage.REQUIRED_ATTRIBUTES:[Ljava/lang/String;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 26
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.InputStream java.util.Map java.util.Properties java.lang.String top int int java.lang.String[]
StackMap stack:
22: aload 8
iload 6
aaload
astore 5
start local 5 23: aload 2
aload 5
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 25
24: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "STORAGE_InvalidReleaseFile"
aconst_null
iconst_0
anewarray java.lang.Object
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 5 25: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
26: iload 6
iload 7
if_icmplt 22
27: aload 2
ldc "edition"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 32
aload 4
ifnull 32
28: aload 4
ldc "vm-enterprise:"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 31
29: aload 2
ldc "edition"
ldc "ee"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: goto 32
31: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.InputStream java.util.Map java.util.Properties java.lang.String
StackMap stack:
aload 2
ldc "edition"
ldc "ce"
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
32: StackMap locals:
StackMap stack:
aload 2
ldc "java_version"
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.javaVersion:Ljava/lang/String;
invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
33: aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 34 1 istm Ljava/io/InputStream;
1 34 2 graalAttributes Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
2 34 3 props Ljava/util/Properties;
4 34 4 srcText Ljava/lang/String;
6 20 5 key Ljava/lang/String;
7 20 7 val Ljava/lang/String;
8 20 8 lowerKey Ljava/lang/String;
12 18 9 m Ljava/util/regex/Matcher;
23 25 5 a Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Ljava/io/InputStream;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
MethodParameters:
Name Flags
istm
public java.util.Set<java.lang.String> listComponentIDs();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 2
1: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
astore 1
start local 1 3: aload 1
new org.graalvm.component.installer.persist.DirectoryStorage$1
dup
aload 0
invokespecial org.graalvm.component.installer.persist.DirectoryStorage$1.<init>:(Lorg/graalvm/component/installer/persist/DirectoryStorage;)V
invokevirtual java.io.File.listFiles:(Ljava/io/FileFilter;)[Ljava/io/File;
astore 2
start local 2 4: aload 2
ifnull 16
5: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 6: aload 2
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 12
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.File java.io.File[] java.util.Set top int int java.io.File[]
StackMap stack:
7: aload 7
iload 5
aaload
astore 4
start local 4 8: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
aload 4
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.relativize:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 8
start local 8 9: aload 8
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 9
start local 9 10: aload 3
aload 8
iconst_0
iload 9
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 9 end local 8 end local 4 11: iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
iload 6
if_icmplt 7
13: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
ldc "bin"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 15
14: aload 3
ldc "org.graalvm"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
15: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.io.File java.io.File[] java.util.Set
StackMap stack:
aload 3
areturn
end local 3 16: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "File listing of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " returned null."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
3 17 1 d Ljava/io/File;
4 17 2 files [Ljava/io/File;
6 16 3 result Ljava/util/Set<Ljava/lang/String;>;
8 11 4 f Ljava/io/File;
9 11 8 s Ljava/lang/String;
10 11 9 lastDot I
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
private static java.lang.String computeTag(java.util.Properties);
descriptor: (Ljava/util/Properties;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 3
start local 3 2: aload 0
aload 3
ldc ""
invokevirtual java.util.Properties.store:(Ljava/io/Writer;Ljava/lang/String;)V
3: aload 3
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
ldc "#.*\r?\n\r?"
ldc ""
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
iconst_0
invokestatic org.graalvm.component.installer.SystemUtils.digestString:(Ljava/lang/String;Z)Ljava/lang/String;
4: aload 3
ifnull 5
aload 3
invokevirtual java.io.StringWriter.close:()V
5: StackMap locals: java.util.Properties java.lang.Throwable java.lang.Throwable java.io.StringWriter
StackMap stack: java.lang.String
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 1
7: aload 3
ifnull 8
aload 3
invokevirtual java.io.StringWriter.close:()V
end local 3 StackMap locals:
StackMap stack:
8: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 2
aload 1
ifnonnull 10
aload 2
astore 1
goto 11
StackMap locals:
StackMap stack:
10: aload 1
aload 2
if_acmpeq 11
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
11: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 data Ljava/util/Properties;
2 8 3 wr Ljava/io/StringWriter;
Exception table:
from to target type
2 4 6 any
1 5 9 any
6 9 9 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
org.graalvm.component.installer.model.ComponentInfo loadMetadataFrom(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Lorg/graalvm/component/installer/model/ComponentInfo;
flags: (0x0000)
Code:
stack=7, locals=6, args_size=2
start local 0 start local 1 0: aload 0
new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
putfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
1: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
aload 1
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
2: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
ldc "x-GraalVM-Serial"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 3: aload 2
ifnonnull 5
4: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.computeTag:(Ljava/util/Properties;)Ljava/lang/String;
astore 2
5: StackMap locals: java.lang.String
StackMap stack:
aload 0
ldc "Bundle-Symbolic-Name"
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.getRequiredProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 6: aload 0
ldc "Bundle-Name"
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.getRequiredProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 7: aload 0
ldc "Bundle-Version"
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.getRequiredProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 8: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
new org.graalvm.component.installer.model.ComponentInfo
dup
aload 3
aload 4
aload 5
aload 2
invokespecial org.graalvm.component.installer.model.ComponentInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.propertiesToMeta:(Ljava/util/Properties;Lorg/graalvm/component/installer/model/ComponentInfo;Lorg/graalvm/component/installer/Feedback;)Lorg/graalvm/component/installer/model/ComponentInfo;
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 9 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 9 1 fileStream Ljava/io/InputStream;
3 9 2 serial Ljava/lang/String;
6 9 3 id Ljava/lang/String;
7 9 4 name Ljava/lang/String;
8 9 5 version Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fileStream
public static org.graalvm.component.installer.model.ComponentInfo propertiesToMeta(java.util.Properties, org.graalvm.component.installer.model.ComponentInfo, org.graalvm.component.installer.Feedback);
descriptor: (Ljava/util/Properties;Lorg/graalvm/component/installer/model/ComponentInfo;Lorg/graalvm/component/installer/Feedback;)Lorg/graalvm/component/installer/model/ComponentInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "x-GraalVM-Stability"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 1
aload 3
invokestatic org.graalvm.component.installer.model.StabilityLevel.valueOfMixedCase:(Ljava/lang/String;)Lorg/graalvm/component/installer/model/StabilityLevel;
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setStability:(Lorg/graalvm/component/installer/model/StabilityLevel;)V
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
ldc "x-GraalVM-License-Path"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 4: aload 4
ifnull 7
5: aconst_null
aload 4
invokestatic org.graalvm.component.installer.SystemUtils.checkCommonRelative:(Ljava/nio/file/Path;Ljava/lang/String;)V
6: aload 1
aload 4
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setLicensePath:(Ljava/lang/String;)V
7: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual java.util.Properties.stringPropertyNames:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 26
StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 9: aload 5
ldc "Bundle-RequireCapability-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 13
10: aload 5
ldc "Bundle-RequireCapability-"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 11: aload 0
aload 5
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 12: aload 1
aload 7
aload 8
invokevirtual org.graalvm.component.installer.model.ComponentInfo.addRequiredValue:(Ljava/lang/String;Ljava/lang/String;)V
end local 8 end local 7 13: StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.lang.String java.util.Iterator
StackMap stack:
aload 5
ldc "Bundle-ProvideCapability-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 26
14: aload 5
ldc "Bundle-ProvideCapability-"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 15: aload 0
aload 5
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 16: aload 8
invokevirtual java.lang.String.length:()I
iconst_2
if_icmpge 18
17: goto 26
18: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 8
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 9
start local 9 19: aload 8
iconst_0
invokevirtual java.lang.String.charAt:(I)C
lookupswitch { // 2
34: 22
86: 20
default: 24
}
20: StackMap locals: java.lang.String
StackMap stack:
aload 9
invokestatic org.graalvm.component.installer.Version.fromString:(Ljava/lang/String;)Lorg/graalvm/component/installer/Version;
astore 10
start local 10 21: goto 25
end local 10 22: StackMap locals:
StackMap stack:
aload 9
astore 10
start local 10 23: goto 25
end local 10 24: StackMap locals:
StackMap stack:
goto 26
start local 10 25: StackMap locals: java.lang.Object
StackMap stack:
aload 1
aload 7
aload 10
invokevirtual org.graalvm.component.installer.model.ComponentInfo.provideValue:(Ljava/lang/String;Ljava/lang/Object;)V
end local 10 end local 9 end local 8 end local 7 end local 5 26: StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
27: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 5
start local 5 28: aload 0
ldc "Require-Bundle"
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 34
StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set top int int java.lang.String[]
StackMap stack:
29: aload 9
iload 7
aaload
astore 6
start local 6 30: aload 6
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 10
start local 10 31: aload 10
invokevirtual java.lang.String.isEmpty:()Z
ifne 33
32: aload 5
aload 6
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 6 33: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
34: iload 7
iload 8
if_icmplt 29
35: aload 5
invokeinterface java.util.Set.isEmpty:()Z
ifne 37
36: aload 1
aload 5
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setDependencies:(Ljava/util/Set;)V
37: StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set
StackMap stack:
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.toString:()Ljava/lang/String;
aload 0
ldc "x-GraalVM-Polyglot-Part"
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 39
38: aload 1
iconst_1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setPolyglotRebuild:(Z)V
39: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 6
start local 6 40: aload 0
ldc "x-GraalVM-Working-Directories"
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
ldc ":"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 47
StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set java.util.List top int int java.lang.String[]
StackMap stack:
41: aload 10
iload 8
aaload
astore 7
start local 7 42: aload 7
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 11
start local 11 43: aload 11
invokevirtual java.lang.String.isEmpty:()Z
ifne 46
44: aconst_null
aload 11
invokestatic org.graalvm.component.installer.SystemUtils.checkCommonRelative:(Ljava/nio/file/Path;Ljava/lang/String;)V
45: aload 6
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 7 46: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
47: iload 8
iload 9
if_icmplt 41
48: aload 1
aload 6
invokevirtual org.graalvm.component.installer.model.ComponentInfo.addWorkingDirectories:(Ljava/util/Collection;)V
49: aload 0
ldc "x-GraalVM-License-Type"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 50: aload 7
ifnull 52
51: aload 1
aload 7
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setLicenseType:(Ljava/lang/String;)V
52: StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set java.util.List java.lang.String
StackMap stack:
aload 0
ldc "x-GraalVM-Message-PostInst"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 53: aload 8
ifnull 56
54: aload 8
ldc "\\n"
ldc "\n"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
ldc "\\\\"
ldc "\\"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
astore 9
start local 9 55: aload 1
aload 9
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setPostinstMessage:(Ljava/lang/String;)V
end local 9 56: StackMap locals: java.lang.String
StackMap stack:
aload 0
ldc "x-GraalVM-Component-Origin"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 57: aload 9
ifnull 61
58: aload 1
new java.net.URL
dup
aload 9
invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setRemoteURL:(Ljava/net/URL;)V
59: goto 61
StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set java.util.List java.lang.String java.lang.String java.lang.String
StackMap stack: java.net.MalformedURLException
60: pop
61: StackMap locals:
StackMap stack:
aload 0
ldc "x-GraalVM-Component-Distribution"
getstatic org.graalvm.component.installer.model.DistributionType.OPTIONAL:Lorg/graalvm/component/installer/model/DistributionType;
invokevirtual org.graalvm.component.installer.model.DistributionType.name:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 10
start local 10 62: aload 1
aload 10
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toUpperCase:(Ljava/util/Locale;)Ljava/lang/String;
invokestatic org.graalvm.component.installer.model.DistributionType.valueOf:(Ljava/lang/String;)Lorg/graalvm/component/installer/model/DistributionType;
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setDistributionType:(Lorg/graalvm/component/installer/model/DistributionType;)V
63: goto 68
StackMap locals: java.util.Properties org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.Feedback java.lang.String java.lang.String java.util.Set java.util.List java.lang.String java.lang.String java.lang.String java.lang.String
StackMap stack: java.lang.IllegalArgumentException
64: pop
65: new org.graalvm.component.installer.MetadataException
dup
ldc "x-GraalVM-Component-Distribution"
66: aload 2
ldc Lorg/graalvm/component/installer/persist/DirectoryStorage;
invokeinterface org.graalvm.component.installer.Feedback.withBundle:(Ljava/lang/Class;)Lorg/graalvm/component/installer/Feedback;
ldc "ERROR_InvalidDistributionType"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 10
aastore
invokeinterface org.graalvm.component.installer.Feedback.l10n:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
67: invokespecial org.graalvm.component.installer.MetadataException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
athrow
68: StackMap locals:
StackMap stack:
aload 1
areturn
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 69 0 loaded Ljava/util/Properties;
0 69 1 ci Lorg/graalvm/component/installer/model/ComponentInfo;
0 69 2 fb Lorg/graalvm/component/installer/Feedback;
1 69 3 stability Ljava/lang/String;
4 69 4 license Ljava/lang/String;
9 26 5 s Ljava/lang/String;
11 13 7 k Ljava/lang/String;
12 13 8 v Ljava/lang/String;
15 26 7 k Ljava/lang/String;
16 26 8 v Ljava/lang/String;
19 26 9 val Ljava/lang/String;
21 22 10 o Ljava/lang/Object;
23 24 10 o Ljava/lang/Object;
25 26 10 o Ljava/lang/Object;
28 69 5 deps Ljava/util/Set<Ljava/lang/String;>;
30 33 6 s Ljava/lang/String;
31 33 10 p Ljava/lang/String;
40 69 6 ll Ljava/util/List<Ljava/lang/String;>;
42 46 7 s Ljava/lang/String;
43 46 11 p Ljava/lang/String;
50 69 7 licType Ljava/lang/String;
53 69 8 postInst Ljava/lang/String;
55 56 9 text Ljava/lang/String;
57 69 9 u Ljava/lang/String;
62 69 10 dtn Ljava/lang/String;
Exception table:
from to target type
58 59 60 Class java.net.MalformedURLException
62 63 64 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
loaded
ci
fb
private org.graalvm.component.installer.model.ComponentInfo getCoreInfo();
descriptor: ()Lorg/graalvm/component/installer/model/ComponentInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalCore:Lorg/graalvm/component/installer/model/ComponentInfo;
ifnull 2
1: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalCore:Lorg/graalvm/component/installer/model/ComponentInfo;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.getGraalVMVersion:()Lorg/graalvm/component/installer/Version;
astore 1
start local 1 3: new org.graalvm.component.installer.model.ComponentInfo
dup
ldc "org.graalvm"
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "NAME_GraalCoreComponent"
iconst_0
anewarray java.lang.Object
invokeinterface org.graalvm.component.installer.Feedback.l10n:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
4: aload 1
invokevirtual org.graalvm.component.installer.Version.originalString:()Ljava/lang/String;
5: invokespecial org.graalvm.component.installer.model.ComponentInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
astore 2
start local 2 6: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "org.graalvm.meta"
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 3
start local 3 7: aload 3
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 9
8: aload 2
iconst_1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setNativeComponent:(Z)V
9: StackMap locals: org.graalvm.component.installer.Version org.graalvm.component.installer.model.ComponentInfo java.nio.file.Path
StackMap stack:
aload 0
aload 2
putfield org.graalvm.component.installer.persist.DirectoryStorage.graalCore:Lorg/graalvm/component/installer/model/ComponentInfo;
10: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalCore:Lorg/graalvm/component/installer/model/ComponentInfo;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
3 11 1 v Lorg/graalvm/component/installer/Version;
6 11 2 ci Lorg/graalvm/component/installer/model/ComponentInfo;
7 11 3 cmpFile Ljava/nio/file/Path;
public java.util.Set<org.graalvm.component.installer.model.ComponentInfo> loadComponentMetadata(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".component"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 2
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 9
3: ldc "org.graalvm"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: aload 0
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.getCoreInfo:()Lorg/graalvm/component/installer/model/ComponentInfo;
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
areturn
5: StackMap locals: java.nio.file.Path int
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".meta"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
6: aload 2
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 8
7: aconst_null
areturn
8: StackMap locals:
StackMap stack:
iconst_1
istore 3
9: StackMap locals:
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
10: aload 2
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.newInputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream;
astore 6
start local 6 11: aload 0
aload 6
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.loadMetadataFrom:(Ljava/io/InputStream;)Lorg/graalvm/component/installer/model/ComponentInfo;
astore 7
start local 7 12: aload 7
aload 2
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setInfoPath:(Ljava/lang/String;)V
13: aload 7
iload 3
invokevirtual org.graalvm.component.installer.model.ComponentInfo.setNativeComponent:(Z)V
14: aload 7
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
15: aload 6
ifnull 16
aload 6
invokevirtual java.io.InputStream.close:()V
16: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.lang.String java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.io.InputStream org.graalvm.component.installer.model.ComponentInfo
StackMap stack: java.util.Set
areturn
end local 7 StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.lang.String java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.lang.Throwable
17: astore 4
18: aload 6
ifnull 19
aload 6
invokevirtual java.io.InputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
19: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 5
aload 4
ifnonnull 21
aload 5
astore 4
goto 22
StackMap locals:
StackMap stack:
21: aload 4
aload 5
if_acmpeq 22
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
22: aload 4
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 23 1 tag Ljava/lang/String;
1 23 2 cmpFile Ljava/nio/file/Path;
2 23 3 nc Z
11 19 6 fileStream Ljava/io/InputStream;
12 17 7 info Lorg/graalvm/component/installer/model/ComponentInfo;
Exception table:
from to target type
11 15 17 any
10 16 20 any
17 20 20 any
Exceptions:
throws java.io.IOException
Signature: (Ljava/lang/String;)Ljava/util/Set<Lorg/graalvm/component/installer/model/ComponentInfo;>;
MethodParameters:
Name Flags
tag
public org.graalvm.component.installer.model.ComponentInfo loadComponentFiles(org.graalvm.component.installer.model.ComponentInfo);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;)Lorg/graalvm/component/installer/model/ComponentInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".filelist"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 3
start local 3 2: aload 3
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 4
3: aload 1
areturn
4: StackMap locals: java.lang.String java.nio.file.Path
StackMap stack:
aload 3
invokestatic java.nio.file.Files.readAllLines:(Ljava/nio/file/Path;)Ljava/util/List;
astore 4
start local 4 5: new java.util.HashSet
dup
aload 4
invokeinterface java.util.List.size:()I
invokespecial java.util.HashSet.<init>:(I)V
astore 5
start local 5 6: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 12
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.nio.file.Path java.util.List java.util.Set top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 8: aload 6
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 8
start local 8 9: aload 8
invokevirtual java.lang.String.isEmpty:()Z
ifne 12
10: aconst_null
aload 8
invokestatic org.graalvm.component.installer.SystemUtils.checkCommonRelative:(Ljava/nio/file/Path;Ljava/lang/String;)V
11: aload 5
aload 8
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 6 12: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
13: new java.util.ArrayList
dup
aload 5
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 4
14: aload 4
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
15: aload 1
aload 4
invokevirtual org.graalvm.component.installer.model.ComponentInfo.addPaths:(Ljava/util/List;)V
16: aload 1
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 17 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 17 1 ci Lorg/graalvm/component/installer/model/ComponentInfo;
1 17 2 tag Ljava/lang/String;
2 17 3 listFile Ljava/nio/file/Path;
5 17 4 s Ljava/util/List<Ljava/lang/String;>;
6 17 5 result Ljava/util/Set<Ljava/lang/String;>;
8 12 6 e Ljava/lang/String;
9 12 8 trimmed Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ci
private java.lang.String getRequiredProperty(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.loaded:Ljava/util/Properties;
aload 1
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "STORAGE_CorruptedComponentStorage"
aconst_null
iconst_0
anewarray java.lang.Object
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 4 1 key Ljava/lang/String;
1 4 2 val Ljava/lang/String;
MethodParameters:
Name Flags
key
public java.util.Map<java.lang.String, java.util.Collection<java.lang.String>> readReplacedFiles();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=13, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "replaced-files.properties"
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonString:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 1
start local 1 1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 2
start local 2 2: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 3
start local 3 3: aload 1
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 5
4: aload 2
areturn
5: StackMap locals: java.nio.file.Path java.util.Map java.util.Properties
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
6: aload 1
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.newInputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream;
astore 6
start local 6 7: aload 3
aload 6
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
8: aload 6
ifnull 14
aload 6
invokevirtual java.io.InputStream.close:()V
goto 14
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.util.Properties java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.lang.Throwable
9: astore 4
aload 6
ifnull 10
aload 6
invokevirtual java.io.InputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
10: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 5
aload 4
ifnonnull 12
aload 5
astore 4
goto 13
StackMap locals:
StackMap stack:
12: aload 4
aload 5
if_acmpeq 13
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 4
athrow
14: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.util.Properties.propertyNames:()Ljava/util/Enumeration;
invokestatic java.util.Collections.list:(Ljava/util/Enumeration;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 5
goto 29
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.util.Properties top java.util.Iterator
StackMap stack:
15: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 16: aload 3
aload 4
ldc ""
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 17: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 7
start local 7 18: aload 6
ldc " *, *"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 25
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.util.Properties java.lang.String java.util.Iterator java.lang.String java.util.Collection top int int java.lang.String[]
StackMap stack:
19: aload 11
iload 9
aaload
astore 8
start local 8 20: aload 8
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 12
start local 12 21: aload 12
invokevirtual java.lang.String.isEmpty:()Z
ifne 24
22: aconst_null
aload 12
invokestatic org.graalvm.component.installer.SystemUtils.checkCommonRelative:(Ljava/nio/file/Path;Ljava/lang/String;)V
23: aload 7
aload 12
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 8 24: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
25: iload 9
iload 10
if_icmplt 19
26: new java.util.ArrayList
dup
aload 7
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 8
start local 8 27: aload 8
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
28: aload 2
aload 4
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 6 end local 4 29: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.util.Properties top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
30: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
1 31 1 replacedPath Ljava/nio/file/Path;
2 31 2 result Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;
3 31 3 props Ljava/util/Properties;
7 10 6 is Ljava/io/InputStream;
16 29 4 s Ljava/lang/String;
17 29 6 files Ljava/lang/String;
18 29 7 unsorted Ljava/util/Collection<Ljava/lang/String;>;
20 24 8 x Ljava/lang/String;
21 24 12 t Ljava/lang/String;
27 29 8 components Ljava/util/List<Ljava/lang/String;>;
Exception table:
from to target type
7 8 9 any
6 11 11 any
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;
public void updateReplacedFiles(java.util.Map<java.lang.String, java.util.Collection<java.lang.String>>);
descriptor: (Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: new org.graalvm.component.installer.persist.SortedProperties
dup
invokespecial org.graalvm.component.installer.persist.SortedProperties.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.util.Map java.util.Properties top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 3: new java.util.ArrayList
dup
aload 1
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 4: aload 5
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
5: aload 2
aload 3
ldc ","
aload 5
invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
end local 5 end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "replaced-files.properties"
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonString:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 3
start local 3 8: aload 2
invokevirtual java.util.Properties.isEmpty:()Z
ifeq 11
9: aload 3
invokestatic java.nio.file.Files.deleteIfExists:(Ljava/nio/file/Path;)Z
pop
10: goto 22
11: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.util.Map java.util.Properties java.nio.file.Path
StackMap stack:
aconst_null
astore 4
aconst_null
astore 5
12: aload 3
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
13: getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
aastore
14: invokestatic java.nio.file.Files.newOutputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/OutputStream;
astore 6
start local 6 15: aload 2
aload 6
aconst_null
invokevirtual java.util.Properties.store:(Ljava/io/OutputStream;Ljava/lang/String;)V
16: aload 6
ifnull 22
aload 6
invokevirtual java.io.OutputStream.close:()V
goto 22
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.util.Map java.util.Properties java.nio.file.Path java.lang.Throwable java.lang.Throwable java.io.OutputStream
StackMap stack: java.lang.Throwable
17: astore 4
aload 6
ifnull 18
aload 6
invokevirtual java.io.OutputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
18: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 5
aload 4
ifnonnull 20
aload 5
astore 4
goto 21
StackMap locals:
StackMap stack:
20: aload 4
aload 5
if_acmpeq 21
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 4
athrow
22: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 23 1 replacedFiles Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;
1 23 2 props Ljava/util/Properties;
3 6 3 k Ljava/lang/String;
4 6 5 ids Ljava/util/List<Ljava/lang/String;>;
8 23 3 replacedPath Ljava/nio/file/Path;
15 18 6 os Ljava/io/OutputStream;
Exception table:
from to target type
15 16 17 any
12 19 19 any
Exceptions:
throws java.io.IOException
Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;)V
MethodParameters:
Name Flags
replacedFiles
public void deleteComponent(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".component"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
start local 2 1: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".filelist"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 3
start local 3 2: aload 2
invokestatic java.nio.file.Files.deleteIfExists:(Ljava/nio/file/Path;)Z
pop
3: aload 3
invokestatic java.nio.file.Files.deleteIfExists:(Ljava/nio/file/Path;)Z
pop
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 5 1 id Ljava/lang/String;
1 5 2 compFile Ljava/nio/file/Path;
2 5 3 listFile Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
public void saveComponent(org.graalvm.component.installer.model.ComponentInfo);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.verifyUserAccess:()V
1: aload 1
ifnonnull 3
2: return
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.isNativeComponent:()Z
ifeq 5
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".component"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
start local 2 6: aconst_null
astore 3
aconst_null
astore 4
7: aload 2
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
8: getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
aastore
9: invokestatic java.nio.file.Files.newOutputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/OutputStream;
astore 5
start local 5 10: aload 1
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.metaToProperties:(Lorg/graalvm/component/installer/model/ComponentInfo;)Ljava/util/Properties;
aload 5
aconst_null
invokevirtual java.util.Properties.store:(Ljava/io/OutputStream;Ljava/lang/String;)V
11: aload 5
ifnull 17
aload 5
invokevirtual java.io.OutputStream.close:()V
goto 17
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.nio.file.Path java.lang.Throwable java.lang.Throwable java.io.OutputStream
StackMap stack: java.lang.Throwable
12: astore 3
aload 5
ifnull 13
aload 5
invokevirtual java.io.OutputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
13: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 4
aload 3
ifnonnull 15
aload 4
astore 3
goto 16
StackMap locals:
StackMap stack:
15: aload 3
aload 4
if_acmpeq 16
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 3
athrow
17: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.saveComponentFileList:(Lorg/graalvm/component/installer/model/ComponentInfo;)V
18: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 19 1 info Lorg/graalvm/component/installer/model/ComponentInfo;
6 19 2 cmpFile Ljava/nio/file/Path;
10 13 5 compFile Ljava/io/OutputStream;
Exception table:
from to target type
10 11 12 any
7 14 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
info
public static java.util.Properties metaToProperties(org.graalvm.component.installer.model.ComponentInfo);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;)Ljava/util/Properties;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: new org.graalvm.component.installer.persist.SortedProperties
dup
invokespecial org.graalvm.component.installer.persist.SortedProperties.<init>:()V
astore 1
start local 1 1: aload 1
ldc "Bundle-Symbolic-Name"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
2: aload 1
ldc "Bundle-Name"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getName:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
3: aload 1
ldc "Bundle-Version"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getVersionString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
4: aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getTag:()Ljava/lang/String;
astore 2
start local 2 5: aload 2
ifnull 7
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 7
6: aload 1
ldc "x-GraalVM-Serial"
aload 2
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
7: StackMap locals: org.graalvm.component.installer.persist.SortedProperties java.lang.String
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getLicensePath:()Ljava/lang/String;
ifnull 9
8: aload 1
ldc "x-GraalVM-License-Path"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getLicensePath:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getLicenseType:()Ljava/lang/String;
ifnull 11
10: aload 1
ldc "x-GraalVM-License-Type"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getLicenseType:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getStability:()Lorg/graalvm/component/installer/model/StabilityLevel;
getstatic org.graalvm.component.installer.model.StabilityLevel.Undefined:Lorg/graalvm/component/installer/model/StabilityLevel;
if_acmpeq 13
12: aload 1
ldc "x-GraalVM-Stability"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getStability:()Lorg/graalvm/component/installer/model/StabilityLevel;
invokevirtual org.graalvm.component.installer.model.StabilityLevel.toString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
13: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getRequiredGraalValues:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 19
StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String top java.util.Iterator
StackMap stack:
14: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 15: aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getRequiredGraalValues:()Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 16: aload 5
ifnonnull 18
17: ldc ""
astore 5
18: StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String java.lang.String java.util.Iterator java.lang.String
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Bundle-RequireCapability-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
end local 5 end local 3 19: StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
20: aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getProvidedValues:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 30
StackMap locals:
StackMap stack:
21: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 22: aload 0
aload 3
ldc Ljava/lang/Object;
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getProvidedValue:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
astore 5
start local 5 23: aload 5
instanceof java.lang.String
ifeq 26
24: bipush 34
istore 6
start local 6 25: goto 29
end local 6 StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String java.lang.String java.util.Iterator java.lang.Object
StackMap stack:
26: aload 5
instanceof org.graalvm.component.installer.Version
ifeq 30
27: bipush 86
istore 6
start local 6 28: aload 5
checkcast org.graalvm.component.installer.Version
invokevirtual org.graalvm.component.installer.Version.originalString:()Ljava/lang/String;
astore 5
29: StackMap locals: int
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Bundle-ProvideCapability-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
new java.lang.StringBuilder
dup
iload 6
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
end local 6 end local 5 end local 3 30: StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
31: aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getDependencies:()Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 33
32: aload 1
ldc "Require-Bundle"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getDependencies:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.sequential:()Ljava/util/stream/BaseStream;
checkcast java.util.stream.Stream
ldc ":"
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
33: StackMap locals: org.graalvm.component.installer.model.ComponentInfo org.graalvm.component.installer.persist.SortedProperties java.lang.String
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getPostinstMessage:()Ljava/lang/String;
ifnull 35
34: aload 1
ldc "x-GraalVM-Message-PostInst"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getPostinstMessage:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
35: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.isPolyglotRebuild:()Z
ifeq 37
36: aload 1
ldc "x-GraalVM-Polyglot-Part"
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.toString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
37: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getWorkingDirectories:()Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 39
38: aload 1
ldc "x-GraalVM-Working-Directories"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getWorkingDirectories:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.sequential:()Ljava/util/stream/BaseStream;
checkcast java.util.stream.Stream
ldc ":"
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
39: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getDistributionType:()Lorg/graalvm/component/installer/model/DistributionType;
getstatic org.graalvm.component.installer.model.DistributionType.OPTIONAL:Lorg/graalvm/component/installer/model/DistributionType;
if_acmpeq 41
40: aload 1
ldc "x-GraalVM-Component-Distribution"
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getDistributionType:()Lorg/graalvm/component/installer/model/DistributionType;
invokevirtual org.graalvm.component.installer.model.DistributionType.name:()Ljava/lang/String;
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
41: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getRemoteURL:()Ljava/net/URL;
astore 3
start local 3 42: aload 3
ifnull 44
43: aload 1
ldc "x-GraalVM-Component-Origin"
aload 3
invokevirtual java.net.URL.toString:()Ljava/lang/String;
invokevirtual org.graalvm.component.installer.persist.SortedProperties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
44: StackMap locals: java.net.URL
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 info Lorg/graalvm/component/installer/model/ComponentInfo;
1 45 1 p Lorg/graalvm/component/installer/persist/SortedProperties;
5 45 2 s Ljava/lang/String;
15 19 3 k Ljava/lang/String;
16 19 5 v Ljava/lang/String;
22 30 3 k Ljava/lang/String;
23 30 5 o Ljava/lang/Object;
25 26 6 t C
28 30 6 t C
42 45 3 u Ljava/net/URL;
MethodParameters:
Name Flags
info
void saveComponentFileList(org.graalvm.component.installer.model.ComponentInfo);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
new java.lang.StringBuilder
dup
aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".filelist"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fileName:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
start local 2 1: new java.util.ArrayList
dup
new java.util.HashSet
dup
aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getPaths:()Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 2: aload 3
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
3: aload 2
aload 3
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
4: getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
aastore
5: invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 7 1 info Lorg/graalvm/component/installer/model/ComponentInfo;
1 7 2 listFile Ljava/nio/file/Path;
2 7 3 entries Ljava/util/List<Ljava/lang/String;>;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
info
private static java.lang.String transliterateLicenseId(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc "[^-\\p{Alnum}.,_()@^{}~]"
ldc "_"
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 licenseID Ljava/lang/String;
MethodParameters:
Name Flags
licenseID
public java.util.Date licenseAccepted(org.graalvm.component.installer.model.ComponentInfo, java.lang.String);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;Ljava/lang/String;)Ljava/util/Date;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.component.installer.SystemUtils.isLicenseTrackingEnabled:()Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.transliterateLicenseId:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 3: ldc "licenses/{0}.accepted/_all"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
dup
iconst_1
aload 1
ifnonnull 4
ldc "_all"
goto 5
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.lang.String
StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
4: aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.lang.String
StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
5: aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 4
start local 4 6: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
aload 4
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 5
start local 5 7: aload 5
invokestatic java.nio.file.Files.isReadable:(Ljava/nio/file/Path;)Z
ifne 9
8: aconst_null
areturn
9: StackMap locals: java.lang.String java.nio.file.Path
StackMap stack:
new java.util.Date
dup
aload 5
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.getLastModifiedTime:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileTime;
invokevirtual java.nio.file.attribute.FileTime.toMillis:()J
invokespecial java.util.Date.<init>:(J)V
10: areturn
end local 5 end local 4 11: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.lang.String
StackMap stack: java.io.IOException
astore 4
start local 4 12: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERR_CannotReadAcceptance"
aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 13 1 info Lorg/graalvm/component/installer/model/ComponentInfo;
0 13 2 licenseID Ljava/lang/String;
3 13 3 id Ljava/lang/String;
6 11 4 fn Ljava/lang/String;
7 11 5 listFile Ljava/nio/file/Path;
12 13 4 ex Ljava/io/IOException;
Exception table:
from to target type
3 8 11 Class java.io.IOException
9 10 11 Class java.io.IOException
MethodParameters:
Name Flags
info
licenseID
public java.util.Map<java.lang.String, java.util.Collection<java.lang.String>> findAcceptedLicenses();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=1
start local 0 0: invokestatic org.graalvm.component.installer.SystemUtils.isLicenseTrackingEnabled:()Z
ifne 2
1: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "licenses"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 1
start local 1 3: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 2
start local 2 4: aload 1
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 7
5: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
6: areturn
7: StackMap locals: java.nio.file.Path java.util.Map
StackMap stack:
aload 1
iconst_0
anewarray java.nio.file.FileVisitOption
invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
aload 0
aload 1
aload 2
invokedynamic accept(Lorg/graalvm/component/installer/persist/DirectoryStorage;Ljava/nio/file/Path;Ljava/util/Map;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/graalvm/component/installer/persist/DirectoryStorage.lambda$0(Ljava/nio/file/Path;Ljava/util/Map;Ljava/nio/file/Path;)V (7)
(Ljava/nio/file/Path;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
8: goto 13
StackMap locals:
StackMap stack: java.io.UncheckedIOException
9: astore 3
start local 3 10: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERR_CannotReadAcceptance"
aload 3
invokevirtual java.io.UncheckedIOException.getCause:()Ljava/io/IOException;
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "(all)"
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 3 11: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 12: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERR_CannotReadAcceptance"
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "(all)"
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 3 13: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
3 14 1 licDir Ljava/nio/file/Path;
4 14 2 result Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;
10 11 3 ex Ljava/io/UncheckedIOException;
12 13 3 ex Ljava/io/IOException;
Exception table:
from to target type
4 6 9 Class java.io.UncheckedIOException
7 8 9 Class java.io.UncheckedIOException
4 6 11 Class java.io.IOException
7 8 11 Class java.io.IOException
Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;>;
public void recordLicenseAccepted(org.graalvm.component.installer.model.ComponentInfo, java.lang.String, java.lang.String, java.util.Date);
descriptor: (Lorg/graalvm/component/installer/model/ComponentInfo;Ljava/lang/String;Ljava/lang/String;Ljava/util/Date;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: invokestatic org.graalvm.component.installer.SystemUtils.isLicenseTrackingEnabled:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 5
3: aload 0
invokevirtual org.graalvm.component.installer.persist.DirectoryStorage.clearRecordedLicenses:()V
4: return
5: StackMap locals:
StackMap stack:
aload 2
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.transliterateLicenseId:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 6: ldc "licenses/{0}.accepted/_all"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 1
ifnonnull 7
ldc "_all"
goto 8
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.lang.String java.util.Date java.lang.String
StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
7: aload 1
invokevirtual org.graalvm.component.installer.model.ComponentInfo.getId:()Ljava/lang/String;
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage org.graalvm.component.installer.model.ComponentInfo java.lang.String java.lang.String java.util.Date java.lang.String
StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
8: aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 6
start local 6 9: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
aload 6
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 7
start local 7 10: aload 7
ifnonnull 12
11: new java.lang.IllegalArgumentException
dup
aload 2
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals: java.lang.String java.nio.file.Path
StackMap stack:
aload 7
invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
astore 8
start local 8 13: aload 8
ifnonnull 15
14: new java.lang.IllegalArgumentException
dup
aload 2
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals: java.nio.file.Path
StackMap stack:
aload 8
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 24
16: aload 8
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
17: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
18: ldc "licenses/{0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
19: invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 9
start local 9 20: aload 9
aload 3
ldc "\n"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
21: aload 5
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 24
22: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "licenses/{0}.id"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 10
start local 10 23: aload 10
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 2
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
end local 10 end local 9 24: StackMap locals:
StackMap stack:
aload 4
ifnonnull 25
new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
goto 26
StackMap locals:
StackMap stack:
25: aload 4
StackMap locals:
StackMap stack: java.util.Date
26: invokevirtual java.util.Date.toString:()Ljava/lang/String;
astore 9
start local 9 27: aload 7
aload 9
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
aastore
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;Ljava/lang/Iterable;[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
28: return
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 29 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 29 1 info Lorg/graalvm/component/installer/model/ComponentInfo;
0 29 2 licenseID Ljava/lang/String;
0 29 3 licenseText Ljava/lang/String;
0 29 4 d Ljava/util/Date;
6 29 5 id Ljava/lang/String;
9 29 6 fn Ljava/lang/String;
10 29 7 listFile Ljava/nio/file/Path;
13 29 8 dir Ljava/nio/file/Path;
20 24 9 contentsFile Ljava/nio/file/Path;
23 24 10 p Ljava/nio/file/Path;
27 29 9 ds Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
info
licenseID
licenseText
d
void clearRecordedLicenses();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "licenses"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 1
start local 1 1: aload 1
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 13
2: aconst_null
astore 2
aconst_null
astore 3
3: aload 1
iconst_0
anewarray java.nio.file.FileVisitOption
invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
astore 4
start local 4 4: aload 4
invokestatic java.util.Comparator.reverseOrder:()Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
aload 1
invokedynamic accept(Ljava/nio/file/Path;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/graalvm/component/installer/persist/DirectoryStorage.lambda$2(Ljava/nio/file/Path;Ljava/nio/file/Path;)V (6)
(Ljava/nio/file/Path;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
5: aload 4
ifnull 13
aload 4
invokeinterface java.util.stream.Stream.close:()V
goto 13
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream
StackMap stack: java.lang.Throwable
6: astore 2
aload 4
ifnull 7
aload 4
invokeinterface java.util.stream.Stream.close:()V
end local 4 StackMap locals:
StackMap stack:
7: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 3
aload 2
ifnonnull 9
aload 3
astore 2
goto 10
StackMap locals:
StackMap stack:
9: aload 2
aload 3
if_acmpeq 10
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path
StackMap stack: java.io.UncheckedIOException
11: astore 2
start local 2 12: aload 2
invokevirtual java.io.UncheckedIOException.getCause:()Ljava/io/IOException;
athrow
end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
1 14 1 listFile Ljava/nio/file/Path;
4 7 4 paths Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
12 13 2 ex Ljava/io/UncheckedIOException;
Exception table:
from to target type
4 5 6 any
3 8 8 any
2 11 11 Class java.io.UncheckedIOException
Exceptions:
throws java.io.IOException
public java.lang.String licenseText(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
1: ldc "licenses/{0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokestatic org.graalvm.component.installer.persist.DirectoryStorage.transliterateLicenseId:(Ljava/lang/String;)Ljava/lang/String;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
2: invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 2
start local 2 3: aload 2
invokestatic java.nio.file.Files.lines:(Ljava/nio/file/Path;)Ljava/util/stream/Stream;
ldc "\n"
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
4: areturn
5: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.lang.String java.nio.file.Path
StackMap stack: java.io.IOException
astore 3
start local 3 6: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERR_CannotReadAcceptance"
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 7 1 licID Ljava/lang/String;
3 7 2 contentsFile Ljava/nio/file/Path;
6 7 3 ex Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
MethodParameters:
Name Flags
licID
void verifyUserAccess();
descriptor: ()V
flags: (0x0000)
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
invokestatic java.nio.file.Files.isWritable:(Ljava/nio/file/Path;)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
invokestatic org.graalvm.component.installer.SystemUtils.findFileOwner:(Ljava/nio/file/Path;)Ljava/lang/String;
astore 1
start local 1 3: aload 1
ifnull 6
4: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERROR_MustBecomeUser"
aconst_null
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 1 5: StackMap locals:
StackMap stack: java.io.IOException
pop
6: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.feedback:Lorg/graalvm/component/installer/Feedback;
ldc "ERROR_MustBecomeAdmin"
aconst_null
iconst_0
anewarray java.lang.Object
invokeinterface org.graalvm.component.installer.Feedback.failure:(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
3 5 1 owner Ljava/lang/String;
Exception table:
from to target type
2 5 5 Class java.io.IOException
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iconst_3
istore 1
start local 1 1: bipush 97
iload 1
imul
aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
invokestatic java.util.Objects.hashCode:(Ljava/lang/Object;)I
iadd
istore 1
2: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
1 3 1 hash I
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpeq 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 1
checkcast org.graalvm.component.installer.persist.DirectoryStorage
astore 2
start local 2 7: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
aload 2
getfield org.graalvm.component.installer.persist.DirectoryStorage.graalHomePath:Ljava/nio/file/Path;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 9
8: iconst_0
ireturn
9: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 10 1 obj Ljava/lang/Object;
7 10 2 other Lorg/graalvm/component/installer/persist/DirectoryStorage;
MethodParameters:
Name Flags
obj
private void lambda$0(java.nio.file.Path, java.util.Map, java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;Ljava/util/Map;Ljava/nio/file/Path;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=11, args_size=4
start local 0 start local 3 0: aload 3
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isRegularFile:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
astore 4
start local 4 3: aload 4
aload 1
invokeinterface java.nio.file.Path.equals:(Ljava/lang/Object;)Z
ifeq 5
4: return
5: StackMap locals: java.nio.file.Path
StackMap stack:
aload 4
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 5
start local 5 6: aload 5
ldc ".accepted"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 8
7: return
8: StackMap locals: java.lang.String
StackMap stack:
aload 5
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 6
start local 6 9: aload 5
iconst_0
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 7
start local 7 10: aload 0
getfield org.graalvm.component.installer.persist.DirectoryStorage.registryPath:Ljava/nio/file/Path;
ldc "licenses/{0}.id"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokestatic org.graalvm.component.installer.SystemUtils.fromCommonRelative:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 9
start local 9 11: aload 9
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 15
12: aload 9
invokestatic java.nio.file.Files.readAllLines:(Ljava/nio/file/Path;)Ljava/util/List;
astore 10
start local 10 13: aload 10
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 8
end local 10 start local 8 14: goto 19
end local 8 15: StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.nio.file.Path java.nio.file.Path java.lang.String int java.lang.String top java.nio.file.Path
StackMap stack:
aload 7
astore 8
end local 9 start local 8 16: goto 19
end local 8 StackMap locals: org.graalvm.component.installer.persist.DirectoryStorage java.nio.file.Path java.util.Map java.nio.file.Path java.nio.file.Path java.lang.String int java.lang.String
StackMap stack: java.io.IOException
17: astore 9
start local 9 18: new java.io.UncheckedIOException
dup
aload 9
invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
athrow
end local 9 start local 8 19: StackMap locals: java.lang.String
StackMap stack:
aload 2
aload 8
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/component/installer/persist/DirectoryStorage.lambda$1(Ljava/lang/String;)Ljava/util/Collection; (6)
(Ljava/lang/String;)Ljava/util/Collection;
invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.Collection
aload 3
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 6 end local 5 end local 4 20: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/graalvm/component/installer/persist/DirectoryStorage;
0 21 3 lp Ljava/nio/file/Path;
3 20 4 parent Ljava/nio/file/Path;
6 20 5 fn Ljava/lang/String;
9 20 6 dot I
10 20 7 fnid Ljava/lang/String;
14 15 8 id Ljava/lang/String;
16 17 8 id Ljava/lang/String;
19 20 8 id Ljava/lang/String;
11 16 9 p Ljava/nio/file/Path;
13 14 10 lines Ljava/util/List<Ljava/lang/String;>;
18 19 9 ex Ljava/io/IOException;
Exception table:
from to target type
10 16 17 Class java.io.IOException
private static void lambda$2(java.nio.file.Path, java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface java.nio.file.Path.equals:(Ljava/lang/Object;)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
invokestatic java.nio.file.Files.delete:(Ljava/nio/file/Path;)V
3: goto 6
StackMap locals:
StackMap stack: java.io.IOException
4: astore 2
start local 2 5: new java.io.UncheckedIOException
dup
aload 2
invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
athrow
end local 2 6: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 7 1 p Ljava/nio/file/Path;
5 6 2 ex Ljava/io/IOException;
Exception table:
from to target type
0 1 4 Class java.io.IOException
2 3 4 Class java.io.IOException
private static java.util.Collection lambda$1(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Collection;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x Ljava/lang/String;
}
SourceFile: "DirectoryStorage.java"
NestMembers:
org.graalvm.component.installer.persist.DirectoryStorage$1
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
org.graalvm.component.installer.persist.DirectoryStorage$1