class sun.security.provider.PolicyFile$PolicyInfo
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.provider.PolicyFile$PolicyInfo
super_class: java.lang.Object
{
private static final boolean verbose;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
final java.util.List<sun.security.provider.PolicyFile$PolicyEntry> policyEntries;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lsun/security/provider/PolicyFile$PolicyEntry;>;
final java.util.Map<java.lang.Object, java.lang.Object> aliasMapping;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;
private final jdk.internal.access.JavaSecurityAccess$ProtectionDomainCache[] pdMapping;
descriptor: [Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.Random random;
descriptor: Ljava/util/Random;
flags: (0x0002) ACC_PRIVATE
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 // sun.security.provider.PolicyFile$PolicyInfo this
start local 1 // int numCaches
0: .line 2193
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 2194
aload 0 /* this */
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield sun.security.provider.PolicyFile$PolicyInfo.policyEntries:Ljava/util/List;
2: .line 2195
aload 0 /* this */
new java.util.HashMap
dup
bipush 11
invokespecial java.util.HashMap.<init>:(I)V
invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
putfield sun.security.provider.PolicyFile$PolicyInfo.aliasMapping:Ljava/util/Map;
3: .line 2197
aload 0 /* this */
iload 1 /* numCaches */
anewarray jdk.internal.access.JavaSecurityAccess$ProtectionDomainCache
putfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
4: .line 2199
invokestatic jdk.internal.access.SharedSecrets.getJavaSecurityAccess:()Ljdk/internal/access/JavaSecurityAccess;
5: .line 2198
astore 2 /* jspda */
start local 2 // jdk.internal.access.JavaSecurityAccess jspda
6: .line 2200
iconst_0
istore 3 /* i */
start local 3 // int i
7: goto 10
8: .line 2201
StackMap locals: sun.security.provider.PolicyFile$PolicyInfo int jdk.internal.access.JavaSecurityAccess int
StackMap stack:
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
iload 3 /* i */
aload 2 /* jspda */
invokeinterface jdk.internal.access.JavaSecurityAccess.getProtectionDomainCache:()Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
aastore
9: .line 2200
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 3 /* i */
iload 1 /* numCaches */
if_icmplt 8
end local 3 // int i
11: .line 2203
iload 1 /* numCaches */
iconst_1
if_icmple 13
12: .line 2204
aload 0 /* this */
new java.util.Random
dup
invokespecial java.util.Random.<init>:()V
putfield sun.security.provider.PolicyFile$PolicyInfo.random:Ljava/util/Random;
13: .line 2206
StackMap locals:
StackMap stack:
return
end local 2 // jdk.internal.access.JavaSecurityAccess jspda
end local 1 // int numCaches
end local 0 // sun.security.provider.PolicyFile$PolicyInfo this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/provider/PolicyFile$PolicyInfo;
0 14 1 numCaches I
6 14 2 jspda Ljdk/internal/access/JavaSecurityAccess;
7 11 3 i I
MethodParameters:
Name Flags
numCaches
jdk.internal.access.JavaSecurityAccess$ProtectionDomainCache getPdMapping();
descriptor: ()Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 // sun.security.provider.PolicyFile$PolicyInfo this
0: .line 2208
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
arraylength
iconst_1
if_icmpne 2
1: .line 2209
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
iconst_0
aaload
areturn
2: .line 2211
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.random:Ljava/util/Random;
invokevirtual java.util.Random.nextInt:()I
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
arraylength
irem
invokestatic java.lang.Math.abs:(I)I
istore 1 /* i */
start local 1 // int i
3: .line 2212
aload 0 /* this */
getfield sun.security.provider.PolicyFile$PolicyInfo.pdMapping:[Ljdk/internal/access/JavaSecurityAccess$ProtectionDomainCache;
iload 1 /* i */
aaload
areturn
end local 1 // int i
end local 0 // sun.security.provider.PolicyFile$PolicyInfo this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/provider/PolicyFile$PolicyInfo;
3 4 1 i I
}
SourceFile: "PolicyFile.java"
NestHost: sun.security.provider.PolicyFile
InnerClasses:
public abstract ProtectionDomainCache = jdk.internal.access.JavaSecurityAccess$ProtectionDomainCache of jdk.internal.access.JavaSecurityAccess
private PolicyEntry = sun.security.provider.PolicyFile$PolicyEntry of sun.security.provider.PolicyFile
private PolicyInfo = sun.security.provider.PolicyFile$PolicyInfo of sun.security.provider.PolicyFile