.class final Lorg/apache/http/client/utils/DateUtils$DateFormatHolder; .super Ljava/lang/Object; .source "DateUtils.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lorg/apache/http/client/utils/DateUtils; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x18 name = "DateFormatHolder" .end annotation # static fields .field private static final THREADLOCAL_FORMATS:Ljava/lang/ThreadLocal; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/ThreadLocal<", "Ljava/lang/ref/SoftReference<", "Ljava/util/Map<", "Ljava/lang/String;", "Ljava/text/SimpleDateFormat;", ">;>;>;" } .end annotation .end field # direct methods .method static constructor ()V .registers 1 .line 201 new-instance v0, Ljava/lang/ThreadLocal; invoke-direct {v0}, Ljava/lang/ThreadLocal;->()V sput-object v0, Lorg/apache/http/client/utils/DateUtils$DateFormatHolder;->THREADLOCAL_FORMATS:Ljava/lang/ThreadLocal; return-void .end method .method constructor ()V .registers 1 .line 198 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static clearThreadLocal()V .registers 1 .line 235 sget-object v0, Lorg/apache/http/client/utils/DateUtils$DateFormatHolder;->THREADLOCAL_FORMATS:Ljava/lang/ThreadLocal; invoke-virtual {v0}, Ljava/lang/ThreadLocal;->remove()V return-void .end method .method public static formatFor(Ljava/lang/String;)Ljava/text/SimpleDateFormat; .registers 4 .line 216 sget-object v0, Lorg/apache/http/client/utils/DateUtils$DateFormatHolder;->THREADLOCAL_FORMATS:Ljava/lang/ThreadLocal; invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/lang/ref/SoftReference; if-nez v1, :cond_c const/4 v1, 0x0 goto :goto_12 .line 217 :cond_c invoke-virtual {v1}, Ljava/lang/ref/SoftReference;->get()Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/util/Map; :goto_12 if-nez v1, :cond_21 .line 219 new-instance v1, Ljava/util/HashMap; invoke-direct {v1}, Ljava/util/HashMap;->()V .line 220 new-instance v2, Ljava/lang/ref/SoftReference; invoke-direct {v2, v1}, Ljava/lang/ref/SoftReference;->(Ljava/lang/Object;)V invoke-virtual {v0, v2}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V .line 224 :cond_21 invoke-interface {v1, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/text/SimpleDateFormat; if-nez v0, :cond_3c .line 226 new-instance v0, Ljava/text/SimpleDateFormat; sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale; invoke-direct {v0, p0, v2}, Ljava/text/SimpleDateFormat;->(Ljava/lang/String;Ljava/util/Locale;)V .line 227 const-string v2, "GMT" invoke-static {v2}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone; move-result-object v2 invoke-virtual {v0, v2}, Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V .line 228 invoke-interface {v1, p0, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :cond_3c return-object v0 .end method