a.smali
.class public final Lcn/jiguang/o/a;
.super Ljava/lang/Object;
# static fields
.field private static final a:Ljava/lang/Object;
.field private static b:Ljava/util/concurrent/ConcurrentHashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/ConcurrentHashMap",
"<",
"Ljava/lang/String;",
"Ljava/lang/ThreadLocal",
"<",
"Ljava/text/SimpleDateFormat;",
">;>;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lcn/jiguang/o/a;->a:Ljava/lang/Object;
new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;
invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V
sput-object v0, Lcn/jiguang/o/a;->b:Ljava/util/concurrent/ConcurrentHashMap;
return-void
.end method
.method public static a()Ljava/lang/String;
.registers 2
const-string v0, "yyyyMMddHHmmss"
invoke-static {v0}, Lcn/jiguang/o/a;->a(Ljava/lang/String;)Ljava/text/SimpleDateFormat;
move-result-object v0
new-instance v1, Ljava/util/Date;
invoke-direct {v1}, Ljava/util/Date;-><init>()V
invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method private static a(Ljava/lang/String;)Ljava/text/SimpleDateFormat;
.registers 4
sget-object v0, Lcn/jiguang/o/a;->b:Ljava/util/concurrent/ConcurrentHashMap;
invoke-virtual {v0, p0}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/ThreadLocal;
if-nez v0, :cond_22
sget-object v1, Lcn/jiguang/o/a;->a:Ljava/lang/Object;
monitor-enter v1
:try_start_d
sget-object v0, Lcn/jiguang/o/a;->b:Ljava/util/concurrent/ConcurrentHashMap;
invoke-virtual {v0, p0}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/ThreadLocal;
if-nez v0, :cond_21
new-instance v0, Lcn/jiguang/o/b;
invoke-direct {v0, p0}, Lcn/jiguang/o/b;-><init>(Ljava/lang/String;)V
sget-object v2, Lcn/jiguang/o/a;->b:Ljava/util/concurrent/ConcurrentHashMap;
invoke-virtual {v2, p0, v0}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_21
monitor-exit v1
:try_end_22
.catchall {:try_start_d .. :try_end_22} :catchall_29
:cond_22
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/text/SimpleDateFormat;
return-object v0
:catchall_29
move-exception v0
:try_start_2a
monitor-exit v1
:try_end_2b
.catchall {:try_start_2a .. :try_end_2b} :catchall_29
throw v0
.end method