final class jdk.jpackage.internal.FileAssociation
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.jpackage.internal.FileAssociation
super_class: java.lang.Object
{
java.nio.file.Path launcherPath;
descriptor: Ljava/nio/file/Path;
flags: (0x0000)
java.nio.file.Path iconPath;
descriptor: Ljava/nio/file/Path;
flags: (0x0000)
java.util.List<java.lang.String> mimeTypes;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljava/lang/String;>;
java.util.List<java.lang.String> extensions;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljava/lang/String;>;
java.lang.String description;
descriptor: Ljava/lang/String;
flags: (0x0000)
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jpackage/internal/FileAssociation;
void verify();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.jpackage.internal.FileAssociation.extensions:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 3
1: ldc "message.creating-association-with-null-extension"
2: invokestatic jdk.jpackage.internal.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
invokestatic jdk.jpackage.internal.Log.error:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jpackage/internal/FileAssociation;
static void verify(java.util.List<jdk.jpackage.internal.FileAssociation>);
descriptor: (Ljava/util/List;)V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=5, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 17
StackMap locals: java.util.List int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.jpackage.internal.FileAssociation
astore 2
start local 2 3: iinc 1 1
4: aload 2
getfield jdk.jpackage.internal.FileAssociation.mimeTypes:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 10
5: ldc "error.no-content-types-for-file-association"
astore 4
start local 4 6: new jdk.jpackage.internal.ConfigException
dup
7: aload 4
invokestatic jdk.jpackage.internal.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
8: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".advice"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic jdk.jpackage.internal.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
9: invokespecial jdk.jpackage.internal.ConfigException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
athrow
end local 4 10: StackMap locals: java.util.List int jdk.jpackage.internal.FileAssociation java.util.Iterator
StackMap stack:
aload 2
getfield jdk.jpackage.internal.FileAssociation.mimeTypes:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 16
11: ldc "error.too-many-content-types-for-file-association"
astore 4
start local 4 12: new jdk.jpackage.internal.ConfigException
dup
13: aload 4
invokestatic jdk.jpackage.internal.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
14: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".advice"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic jdk.jpackage.internal.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
15: invokespecial jdk.jpackage.internal.ConfigException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
athrow
end local 4 16: StackMap locals:
StackMap stack:
aload 2
invokevirtual jdk.jpackage.internal.FileAssociation.verify:()V
end local 2 17: StackMap locals: java.util.List int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
18: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 associations Ljava/util/List<Ljdk/jpackage/internal/FileAssociation;>;
1 19 1 assocIdx I
3 17 2 assoc Ljdk/jpackage/internal/FileAssociation;
6 10 4 msgKey Ljava/lang/String;
12 16 4 msgKey Ljava/lang/String;
Exceptions:
throws jdk.jpackage.internal.ConfigException
Signature: (Ljava/util/List<Ljdk/jpackage/internal/FileAssociation;>;)V
MethodParameters:
Name Flags
associations
static java.util.List<jdk.jpackage.internal.FileAssociation> fetchFrom(java.util.Map<java.lang.String, ? super java.lang.Object>);
descriptor: (Ljava/util/Map;)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic jdk.jpackage.internal.StandardBundlerParam.APP_NAME:Ljdk/jpackage/internal/StandardBundlerParam;
aload 0
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 1: getstatic jdk.jpackage.internal.StandardBundlerParam.FILE_ASSOCIATIONS:Ljdk/jpackage/internal/StandardBundlerParam;
aload 0
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
2: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
java/util/Objects.nonNull(Ljava/lang/Object;)Z (6)
(Ljava/util/Map;)Z
3: invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
4: aload 1
invokedynamic apply(Ljava/lang/String;)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;
jdk/jpackage/internal/FileAssociation.lambda$1(Ljava/lang/String;Ljava/util/Map;)Ljdk/jpackage/internal/FileAssociation; (6)
(Ljava/util/Map;)Ljdk/jpackage/internal/FileAssociation;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
5: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
6: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 params Ljava/util/Map<Ljava/lang/String;-Ljava/lang/Object;>;
1 7 1 launcherName Ljava/lang/String;
Signature: (Ljava/util/Map<Ljava/lang/String;-Ljava/lang/Object;>;)Ljava/util/List<Ljdk/jpackage/internal/FileAssociation;>;
MethodParameters:
Name Flags
params
private static jdk.jpackage.internal.FileAssociation lambda$1(java.lang.String, java.util.Map);
descriptor: (Ljava/lang/String;Ljava/util/Map;)Ljdk/jpackage/internal/FileAssociation;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=4, args_size=2
start local 1 0: new jdk.jpackage.internal.FileAssociation
dup
invokespecial jdk.jpackage.internal.FileAssociation.<init>:()V
astore 2
start local 2 1: aload 2
aload 0
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Path.of:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
putfield jdk.jpackage.internal.FileAssociation.launcherPath:Ljava/nio/file/Path;
2: aload 2
3: getstatic jdk.jpackage.internal.StandardBundlerParam.FA_DESCRIPTION:Ljdk/jpackage/internal/StandardBundlerParam;
aload 1
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.lang.String
4: invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
5: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " association"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
6: putfield jdk.jpackage.internal.FileAssociation.description:Ljava/lang/String;
7: aload 2
8: getstatic jdk.jpackage.internal.StandardBundlerParam.FA_EXTENSIONS:Ljdk/jpackage/internal/StandardBundlerParam;
aload 1
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.List
9: invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
10: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
11: putfield jdk.jpackage.internal.FileAssociation.extensions:Ljava/util/List;
12: aload 2
13: getstatic jdk.jpackage.internal.StandardBundlerParam.FA_CONTENT_TYPE:Ljdk/jpackage/internal/StandardBundlerParam;
aload 1
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.List
14: invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
15: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
16: putfield jdk.jpackage.internal.FileAssociation.mimeTypes:Ljava/util/List;
17: getstatic jdk.jpackage.internal.StandardBundlerParam.FA_ICON:Ljdk/jpackage/internal/StandardBundlerParam;
aload 1
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.nio.file.Path
astore 3
start local 3 18: aload 3
ifnull 20
19: aload 2
aload 3
putfield jdk.jpackage.internal.FileAssociation.iconPath:Ljava/nio/file/Path;
20: StackMap locals: jdk.jpackage.internal.FileAssociation java.nio.file.Path
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 21 1 fa Ljava/util/Map<Ljava/lang/String;-Ljava/lang/Object;>;
1 21 2 assoc Ljdk/jpackage/internal/FileAssociation;
18 21 3 icon Ljava/nio/file/Path;
}
SourceFile: "FileAssociation.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles