tmap/smali/com/amazonaws/transform/MapUnmarshaller.smali
2022-06-10 21:38:30 +09:00

161 lines
4.2 KiB
Smali

.class public Lcom/amazonaws/transform/MapUnmarshaller;
.super Ljava/lang/Object;
.source "MapUnmarshaller.java"
# interfaces
.implements Lcom/amazonaws/transform/Unmarshaller;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<V:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lcom/amazonaws/transform/Unmarshaller<",
"Ljava/util/Map<",
"Ljava/lang/String;",
"TV;>;",
"Lcom/amazonaws/transform/JsonUnmarshallerContext;",
">;"
}
.end annotation
# instance fields
.field private final valueUnmarshaller:Lcom/amazonaws/transform/Unmarshaller;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/amazonaws/transform/Unmarshaller<",
"TV;",
"Lcom/amazonaws/transform/JsonUnmarshallerContext;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/amazonaws/transform/Unmarshaller;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/transform/Unmarshaller<",
"TV;",
"Lcom/amazonaws/transform/JsonUnmarshallerContext;",
">;)V"
}
.end annotation
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/amazonaws/transform/MapUnmarshaller;->valueUnmarshaller:Lcom/amazonaws/transform/Unmarshaller;
return-void
.end method
# virtual methods
.method public bridge synthetic unmarshall(Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
.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/MapUnmarshaller;->unmarshall(Lcom/amazonaws/transform/JsonUnmarshallerContext;)Ljava/util/Map;
move-result-object p1
return-object p1
.end method
.method public unmarshall(Lcom/amazonaws/transform/JsonUnmarshallerContext;)Ljava/util/Map;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/amazonaws/transform/JsonUnmarshallerContext;",
")",
"Ljava/util/Map<",
"Ljava/lang/String;",
"TV;>;"
}
.end annotation
.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 v0
.line 3
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->peek()Lcom/amazonaws/util/json/AwsJsonToken;
move-result-object v1
sget-object v2, Lcom/amazonaws/util/json/AwsJsonToken;->VALUE_NULL:Lcom/amazonaws/util/json/AwsJsonToken;
if-ne v1, v2, :cond_0
.line 4
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->skipValue()V
const/4 p1, 0x0
return-object p1
.line 5
:cond_0
new-instance v1, Ljava/util/HashMap;
invoke-direct {v1}, Ljava/util/HashMap;-><init>()V
.line 6
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->beginObject()V
.line 7
:goto_0
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
.line 8
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->nextName()Ljava/lang/String;
move-result-object v2
.line 9
iget-object v3, p0, Lcom/amazonaws/transform/MapUnmarshaller;->valueUnmarshaller:Lcom/amazonaws/transform/Unmarshaller;
invoke-interface {v3, p1}, Lcom/amazonaws/transform/Unmarshaller;->unmarshall(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
.line 10
invoke-virtual {v1, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
.line 11
:cond_1
invoke-interface {v0}, Lcom/amazonaws/util/json/AwsJsonReader;->endObject()V
return-object v1
.end method