public class org.apache.http.protocol.HttpDateGenerator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.http.protocol.HttpDateGenerator
super_class: java.lang.Object
{
public static final java.lang.String PATTERN_RFC1123;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "EEE, dd MMM yyyy HH:mm:ss zzz"
public static final java.util.TimeZone GMT;
descriptor: Ljava/util/TimeZone;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final java.text.DateFormat dateformat;
descriptor: Ljava/text/DateFormat;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private long dateAsLong;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private java.lang.String dateAsText;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "GMT"
invokestatic java.util.TimeZone.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
putstatic org.apache.http.protocol.HttpDateGenerator.GMT:Ljava/util/TimeZone;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
lconst_0
putfield org.apache.http.protocol.HttpDateGenerator.dateAsLong:J
2: aload 0
aconst_null
putfield org.apache.http.protocol.HttpDateGenerator.dateAsText:Ljava/lang/String;
3: aload 0
new java.text.SimpleDateFormat
dup
ldc "EEE, dd MMM yyyy HH:mm:ss zzz"
getstatic java.util.Locale.US:Ljava/util/Locale;
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
putfield org.apache.http.protocol.HttpDateGenerator.dateformat:Ljava/text/DateFormat;
4: aload 0
getfield org.apache.http.protocol.HttpDateGenerator.dateformat:Ljava/text/DateFormat;
getstatic org.apache.http.protocol.HttpDateGenerator.GMT:Ljava/util/TimeZone;
invokevirtual java.text.DateFormat.setTimeZone:(Ljava/util/TimeZone;)V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/http/protocol/HttpDateGenerator;
public synchronized java.lang.String getCurrentDate();
descriptor: ()Ljava/lang/String;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=3, args_size=1
start local 0 0: invokestatic java.lang.System.currentTimeMillis:()J
lstore 1
start local 1 1: lload 1
aload 0
getfield org.apache.http.protocol.HttpDateGenerator.dateAsLong:J
lsub
ldc 1000
lcmp
ifle 4
2: aload 0
aload 0
getfield org.apache.http.protocol.HttpDateGenerator.dateformat:Ljava/text/DateFormat;
new java.util.Date
dup
lload 1
invokespecial java.util.Date.<init>:(J)V
invokevirtual java.text.DateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
putfield org.apache.http.protocol.HttpDateGenerator.dateAsText:Ljava/lang/String;
3: aload 0
lload 1
putfield org.apache.http.protocol.HttpDateGenerator.dateAsLong:J
4: StackMap locals: long
StackMap stack:
aload 0
getfield org.apache.http.protocol.HttpDateGenerator.dateAsText:Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/http/protocol/HttpDateGenerator;
1 5 1 now J
}
SourceFile: "HttpDateGenerator.java"
RuntimeInvisibleAnnotations:
org.apache.http.annotation.Contract(threading = org.apache.http.annotation.ThreadingBehavior.SAFE:Lorg/apache/http/annotation/ThreadingBehavior;)