SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller.smali
.class public Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
.super Ljava/lang/Object;
.source "SimpleTypeJsonUnmarshallers.java"
# interfaces
.implements Lcom/amazonaws/transform/Unmarshaller;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DateJsonUnmarshaller"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lcom/amazonaws/transform/Unmarshaller<",
"Ljava/util/Date;",
"Lcom/amazonaws/transform/JsonUnmarshallerContext;",
">;"
}
.end annotation
# static fields
.field private static final DATE_MULTIPLIER:I = 0x3e8
.field private static instance:Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
# direct methods
.method public constructor <init>()V
.registers 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static getInstance()Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
.registers 1
.line 1
sget-object v0, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;->instance:Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
if-nez v0, :cond_b
.line 2
new-instance v0, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
invoke-direct {v0}, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;-><init>()V
sput-object v0, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;->instance:Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
.line 3
:cond_b
sget-object v0, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;->instance:Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;
return-object v0
.end method
# virtual methods
.method public bridge synthetic unmarshall(Ljava/lang/Object;)Ljava/lang/Object;
.registers 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 1
check-cast p1, Lcom/amazonaws/transform/JsonUnmarshallerContext;
invoke-virtual {p0, p1}, Lcom/amazonaws/transform/SimpleTypeJsonUnmarshallers$DateJsonUnmarshaller;->unmarshall(Lcom/amazonaws/transform/JsonUnmarshallerContext;)Ljava/util/Date;
move-result-object p1
return-object p1
.end method
.method public unmarshall(Lcom/amazonaws/transform/JsonUnmarshallerContext;)Ljava/util/Date;
.registers 8
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 2
invoke-virtual {p1}, Lcom/amazonaws/transform/JsonUnmarshallerContext;->getReader()Lcom/amazonaws/util/json/AwsJsonReader;
move-result-object p1
invoke-interface {p1}, Lcom/amazonaws/util/json/AwsJsonReader;->nextString()Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_c
const/4 p1, 0x0
return-object p1
.line 3
:cond_c
:try_start_c
new-instance v0, Ljava/util/Locale;
const-string v1, "en"
invoke-direct {v0, v1}, Ljava/util/Locale;-><init>(Ljava/lang/String;)V
invoke-static {v0}, Ljava/text/NumberFormat;->getInstance(Ljava/util/Locale;)Ljava/text/NumberFormat;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/text/NumberFormat;->parse(Ljava/lang/String;)Ljava/lang/Number;
move-result-object v0
.line 4
new-instance v1, Ljava/util/Date;
invoke-virtual {v0}, Ljava/lang/Number;->longValue()J
move-result-wide v2
const-wide/16 v4, 0x3e8
mul-long v2, v2, v4
invoke-direct {v1, v2, v3}, Ljava/util/Date;-><init>(J)V
:try_end_28
.catch Ljava/text/ParseException; {:try_start_c .. :try_end_28} :catch_29
return-object v1
:catch_29
move-exception v0
.line 5
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Unable to parse date \'"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "\': "
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 6
invoke-virtual {v0}, Ljava/text/ParseException;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 7
new-instance v1, Lcom/amazonaws/AmazonClientException;
invoke-direct {v1, p1, v0}, Lcom/amazonaws/AmazonClientException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method