public abstract class org.bouncycastle.asn1.x500.style.AbstractX500NameStyle implements org.bouncycastle.asn1.x500.X500NameStyle
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.bouncycastle.asn1.x500.style.AbstractX500NameStyle
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
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 Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
public static java.util.Hashtable copyHashTable(java.util.Hashtable);
descriptor: (Ljava/util/Hashtable;)Ljava/util/Hashtable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
astore 1
start local 1 1: aload 0
invokevirtual java.util.Hashtable.keys:()Ljava/util/Enumeration;
astore 2
start local 2 2: goto 5
3: StackMap locals: java.util.Hashtable java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
astore 3
start local 3 4: aload 1
aload 3
aload 0
aload 3
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 3
6: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 paramsMap Ljava/util/Hashtable;
1 7 1 newTable Ljava/util/Hashtable;
2 7 2 keys Ljava/util/Enumeration;
4 5 3 key Ljava/lang/Object;
MethodParameters:
Name Flags
paramsMap
private int calcHashCode(org.bouncycastle.asn1.ASN1Encodable);
descriptor: (Lorg/bouncycastle/asn1/ASN1Encodable;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.bouncycastle.asn1.x500.style.IETFUtils.valueToString:(Lorg/bouncycastle/asn1/ASN1Encodable;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
invokestatic org.bouncycastle.asn1.x500.style.IETFUtils.canonicalize:(Ljava/lang/String;)Ljava/lang/String;
astore 2
2: aload 2
invokevirtual java.lang.String.hashCode:()I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 3 1 enc Lorg/bouncycastle/asn1/ASN1Encodable;
1 3 2 value Ljava/lang/String;
MethodParameters:
Name Flags
enc
public int calculateHashCode(org.bouncycastle.asn1.x500.X500Name);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 1
invokevirtual org.bouncycastle.asn1.x500.X500Name.getRDNs:()[Lorg/bouncycastle/asn1/x500/RDN;
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 16
4: StackMap locals: int org.bouncycastle.asn1.x500.RDN[] int
StackMap stack:
aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.isMultiValued:()Z
ifeq 13
5: aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getTypesAndValues:()[Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
astore 5
start local 5 6: iconst_0
istore 6
start local 6 7: goto 11
8: StackMap locals: org.bouncycastle.asn1.x500.AttributeTypeAndValue[] int
StackMap stack:
iload 2
aload 5
iload 6
aaload
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.hashCode:()I
ixor
istore 2
9: iload 2
aload 0
aload 5
iload 6
aaload
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getValue:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.calcHashCode:(Lorg/bouncycastle/asn1/ASN1Encodable;)I
ixor
istore 2
10: iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
aload 5
arraylength
if_icmpne 8
end local 6 end local 5 12: goto 15
13: StackMap locals:
StackMap stack:
iload 2
aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.hashCode:()I
ixor
istore 2
14: iload 2
aload 0
aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getValue:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.calcHashCode:(Lorg/bouncycastle/asn1/ASN1Encodable;)I
ixor
istore 2
15: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
aload 3
arraylength
if_icmpne 4
end local 4 17: iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 18 1 name Lorg/bouncycastle/asn1/x500/X500Name;
1 18 2 hashCodeValue I
2 18 3 rdns [Lorg/bouncycastle/asn1/x500/RDN;
3 17 4 i I
6 12 5 atv [Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
7 12 6 j I
MethodParameters:
Name Flags
name
public org.bouncycastle.asn1.ASN1Encodable stringToValue(org.bouncycastle.asn1.ASN1ObjectIdentifier, java.lang.String);
descriptor: (Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Ljava/lang/String;)Lorg/bouncycastle/asn1/ASN1Encodable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual java.lang.String.length:()I
ifeq 5
aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 35
if_icmpne 5
1: aload 2
iconst_1
invokestatic org.bouncycastle.asn1.x500.style.IETFUtils.valueFromHexString:(Ljava/lang/String;I)Lorg/bouncycastle/asn1/ASN1Encodable;
2: areturn
3: StackMap locals:
StackMap stack: java.io.IOException
pop
4: new org.bouncycastle.asn1.ASN1ParsingException
dup
new java.lang.StringBuilder
dup
ldc "can't recode value for oid "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.bouncycastle.asn1.ASN1ParsingException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.String.length:()I
ifeq 7
aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 92
if_icmpne 7
6: aload 2
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 2
7: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.encodeStringValue:(Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Ljava/lang/String;)Lorg/bouncycastle/asn1/ASN1Encodable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 8 1 oid Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
0 8 2 value Ljava/lang/String;
Exception table:
from to target type
1 2 3 Class java.io.IOException
MethodParameters:
Name Flags
oid
value
protected org.bouncycastle.asn1.ASN1Encodable encodeStringValue(org.bouncycastle.asn1.ASN1ObjectIdentifier, java.lang.String);
descriptor: (Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Ljava/lang/String;)Lorg/bouncycastle/asn1/ASN1Encodable;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.bouncycastle.asn1.DERUTF8String
dup
aload 2
invokespecial org.bouncycastle.asn1.DERUTF8String.<init>:(Ljava/lang/String;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 1 1 oid Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
0 1 2 value Ljava/lang/String;
MethodParameters:
Name Flags
oid
value
public boolean areEqual(org.bouncycastle.asn1.x500.X500Name, org.bouncycastle.asn1.x500.X500Name);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;Lorg/bouncycastle/asn1/x500/X500Name;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.bouncycastle.asn1.x500.X500Name.getRDNs:()[Lorg/bouncycastle/asn1/x500/RDN;
astore 3
start local 3 1: aload 2
invokevirtual org.bouncycastle.asn1.x500.X500Name.getRDNs:()[Lorg/bouncycastle/asn1/x500/RDN;
astore 4
start local 4 2: aload 3
arraylength
aload 4
arraylength
if_icmpeq 4
3: iconst_0
ireturn
4: StackMap locals: org.bouncycastle.asn1.x500.RDN[] org.bouncycastle.asn1.x500.RDN[]
StackMap stack:
iconst_0
istore 5
start local 5 5: aload 3
iconst_0
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
ifnull 9
aload 4
iconst_0
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
ifnull 9
6: aload 3
iconst_0
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
aload 4
iconst_0
aaload
invokevirtual org.bouncycastle.asn1.x500.RDN.getFirst:()Lorg/bouncycastle/asn1/x500/AttributeTypeAndValue;
invokevirtual org.bouncycastle.asn1.x500.AttributeTypeAndValue.getType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 7
iconst_0
goto 8
StackMap locals: int
StackMap stack:
7: iconst_1
StackMap locals:
StackMap stack: int
8: istore 5
9: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 10: goto 14
11: StackMap locals: int
StackMap stack:
aload 0
iload 5
aload 3
iload 6
aaload
aload 4
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.foundMatch:(ZLorg/bouncycastle/asn1/x500/RDN;[Lorg/bouncycastle/asn1/x500/RDN;)Z
ifne 13
12: iconst_0
ireturn
13: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
14: iload 6
aload 3
arraylength
if_icmpne 11
end local 6 15: iconst_1
ireturn
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 16 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 16 1 name1 Lorg/bouncycastle/asn1/x500/X500Name;
0 16 2 name2 Lorg/bouncycastle/asn1/x500/X500Name;
1 16 3 rdns1 [Lorg/bouncycastle/asn1/x500/RDN;
2 16 4 rdns2 [Lorg/bouncycastle/asn1/x500/RDN;
5 16 5 reverse Z
10 15 6 i I
MethodParameters:
Name Flags
name1
name2
private boolean foundMatch(boolean, org.bouncycastle.asn1.x500.RDN, org.bouncycastle.asn1.x500.RDN[]);
descriptor: (ZLorg/bouncycastle/asn1/x500/RDN;[Lorg/bouncycastle/asn1/x500/RDN;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
ifeq 9
1: aload 3
arraylength
iconst_1
isub
istore 4
start local 4 2: goto 7
3: StackMap locals: int
StackMap stack:
aload 3
iload 4
aaload
ifnull 6
aload 0
aload 2
aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.rdnAreEqual:(Lorg/bouncycastle/asn1/x500/RDN;Lorg/bouncycastle/asn1/x500/RDN;)Z
ifeq 6
4: aload 3
iload 4
aconst_null
aastore
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iinc 4 -1
StackMap locals:
StackMap stack:
7: iload 4
ifge 3
end local 4 8: goto 16
9: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 10: goto 15
11: StackMap locals: int
StackMap stack:
aload 3
iload 4
aaload
ifnull 14
aload 0
aload 2
aload 3
iload 4
aaload
invokevirtual org.bouncycastle.asn1.x500.style.AbstractX500NameStyle.rdnAreEqual:(Lorg/bouncycastle/asn1/x500/RDN;Lorg/bouncycastle/asn1/x500/RDN;)Z
ifeq 14
12: aload 3
iload 4
aconst_null
aastore
13: iconst_1
ireturn
14: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
aload 3
arraylength
if_icmpne 11
end local 4 16: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 17 1 reverse Z
0 17 2 rdn Lorg/bouncycastle/asn1/x500/RDN;
0 17 3 possRDNs [Lorg/bouncycastle/asn1/x500/RDN;
2 8 4 i I
10 16 4 i I
MethodParameters:
Name Flags
reverse
rdn
possRDNs
protected boolean rdnAreEqual(org.bouncycastle.asn1.x500.RDN, org.bouncycastle.asn1.x500.RDN);
descriptor: (Lorg/bouncycastle/asn1/x500/RDN;Lorg/bouncycastle/asn1/x500/RDN;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic org.bouncycastle.asn1.x500.style.IETFUtils.rDNAreEqual:(Lorg/bouncycastle/asn1/x500/RDN;Lorg/bouncycastle/asn1/x500/RDN;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/asn1/x500/style/AbstractX500NameStyle;
0 1 1 rdn1 Lorg/bouncycastle/asn1/x500/RDN;
0 1 2 rdn2 Lorg/bouncycastle/asn1/x500/RDN;
MethodParameters:
Name Flags
rdn1
rdn2
}
SourceFile: "AbstractX500NameStyle.java"