class org.bouncycastle.asn1.DateUtil
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.bouncycastle.asn1.DateUtil
super_class: java.lang.Object
{
private static java.lang.Long ZERO;
descriptor: Ljava/lang/Long;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.util.Map localeCache;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static java.util.Locale EN_Locale;
descriptor: Ljava/util/Locale;
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: lconst_0
invokestatic org.bouncycastle.asn1.DateUtil.longValueOf:(J)Ljava/lang/Long;
putstatic org.bouncycastle.asn1.DateUtil.ZERO:Ljava/lang/Long;
1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic org.bouncycastle.asn1.DateUtil.localeCache:Ljava/util/Map;
2: invokestatic org.bouncycastle.asn1.DateUtil.forEN:()Ljava/util/Locale;
putstatic org.bouncycastle.asn1.DateUtil.EN_Locale:Ljava/util/Locale;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/asn1/DateUtil;
private static java.util.Locale forEN();
descriptor: ()Ljava/util/Locale;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: ldc "en"
invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 2
1: invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
areturn
2: StackMap locals:
StackMap stack:
invokestatic java.util.Locale.getAvailableLocales:()[Ljava/util/Locale;
astore 0
start local 0 3: iconst_0
istore 1
start local 1 4: goto 8
5: StackMap locals: java.util.Locale[] int
StackMap stack:
ldc "en"
aload 0
iload 1
aaload
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 7
6: aload 0
iload 1
aaload
areturn
7: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
8: iload 1
aload 0
arraylength
if_icmpne 5
end local 1 9: invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
3 10 0 locales [Ljava/util/Locale;
4 9 1 i I
static java.util.Date epochAdjust(java.util.Date);
descriptor: (Ljava/util/Date;)Ljava/util/Date;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
areturn
3: StackMap locals: java.util.Locale
StackMap stack:
getstatic org.bouncycastle.asn1.DateUtil.localeCache:Ljava/util/Map;
dup
astore 2
monitorenter
4: getstatic org.bouncycastle.asn1.DateUtil.localeCache:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
astore 3
start local 3 5: aload 3
ifnonnull 13
6: new java.text.SimpleDateFormat
dup
ldc "yyyyMMddHHmmssz"
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
astore 4
start local 4 7: aload 4
ldc "19700101000000GMT+00:00"
invokevirtual java.text.SimpleDateFormat.parse:(Ljava/lang/String;)Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
lstore 5
start local 5 8: lload 5
lconst_0
lcmp
ifne 11
9: getstatic org.bouncycastle.asn1.DateUtil.ZERO:Ljava/lang/Long;
astore 3
10: goto 12
11: StackMap locals: java.util.Date java.util.Locale java.util.Map java.lang.Long java.text.SimpleDateFormat long
StackMap stack:
lload 5
invokestatic org.bouncycastle.asn1.DateUtil.longValueOf:(J)Ljava/lang/Long;
astore 3
12: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.asn1.DateUtil.localeCache:Ljava/util/Map;
aload 1
aload 3
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 end local 4 13: StackMap locals:
StackMap stack:
aload 3
getstatic org.bouncycastle.asn1.DateUtil.ZERO:Ljava/lang/Long;
if_acmpeq 16
14: new java.util.Date
dup
aload 0
invokevirtual java.util.Date.getTime:()J
aload 3
invokevirtual java.lang.Long.longValue:()J
lsub
invokespecial java.util.Date.<init>:(J)V
aload 2
monitorexit
15: areturn
16: StackMap locals:
StackMap stack:
aload 0
aload 2
monitorexit
17: areturn
end local 3 18: StackMap locals: java.util.Date java.util.Locale java.util.Map
StackMap stack: java.lang.Throwable
aload 2
monitorexit
19: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 date Ljava/util/Date;
1 20 1 locale Ljava/util/Locale;
5 18 3 adj Ljava/lang/Long;
7 13 4 dateF Ljava/text/SimpleDateFormat;
8 13 5 v J
Exception table:
from to target type
4 15 18 any
16 17 18 any
18 19 18 any
Exceptions:
throws java.text.ParseException
MethodParameters:
Name Flags
date
private static java.lang.Long longValueOf(long);
descriptor: (J)Ljava/lang/Long;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 v J
MethodParameters:
Name Flags
v
}
SourceFile: "DateUtil.java"