StdKeySerializers.smali
.class public Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;
.super Ljava/lang/Object;
.source "StdKeySerializers.java"
# static fields
.field protected static final DEFAULT_KEY_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/fasterxml/jackson/databind/JsonSerializer",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field protected static final DEFAULT_STRING_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/fasterxml/jackson/databind/JsonSerializer",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 17
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializer;
invoke-direct {v0}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializer;-><init>()V
sput-object v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;->DEFAULT_KEY_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
.line 19
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$StringKeySerializer;
invoke-direct {v0}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$StringKeySerializer;-><init>()V
sput-object v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;->DEFAULT_STRING_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
return-void
.end method
.method public static getFallbackKeySerializer(Lcom/fasterxml/jackson/databind/SerializationConfig;Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/JsonSerializer;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/fasterxml/jackson/databind/SerializationConfig;",
"Ljava/lang/Class",
"<*>;)",
"Lcom/fasterxml/jackson/databind/JsonSerializer",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.prologue
.line 79
if-eqz p1, :cond_1b
.line 86
const-class v0, Ljava/lang/Enum;
if-ne p1, v0, :cond_c
.line 87
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Dynamic;
invoke-direct {v0}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Dynamic;-><init>()V
.line 94
:goto_b
return-object v0
.line 89
:cond_c
invoke-virtual {p1}, Ljava/lang/Class;->isEnum()Z
move-result v0
if-eqz v0, :cond_1b
.line 90
invoke-static {p0, p1}, Lcom/fasterxml/jackson/databind/util/EnumValues;->constructFromName(Lcom/fasterxml/jackson/databind/cfg/MapperConfig;Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/util/EnumValues;
move-result-object v0
invoke-static {p1, v0}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$EnumKeySerializer;->construct(Ljava/lang/Class;Lcom/fasterxml/jackson/databind/util/EnumValues;)Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$EnumKeySerializer;
move-result-object v0
goto :goto_b
.line 94
:cond_1b
sget-object v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;->DEFAULT_KEY_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
goto :goto_b
.end method
.method public static getStdKeySerializer(Lcom/fasterxml/jackson/databind/SerializationConfig;Ljava/lang/Class;Z)Lcom/fasterxml/jackson/databind/JsonSerializer;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/fasterxml/jackson/databind/SerializationConfig;",
"Ljava/lang/Class",
"<*>;Z)",
"Lcom/fasterxml/jackson/databind/JsonSerializer",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.prologue
const/4 v1, 0x5
.line 39
if-eqz p1, :cond_7
const-class v0, Ljava/lang/Object;
if-ne p1, v0, :cond_d
.line 40
:cond_7
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Dynamic;
invoke-direct {v0}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Dynamic;-><init>()V
.line 66
:goto_c
return-object v0
.line 42
:cond_d
const-class v0, Ljava/lang/String;
if-ne p1, v0, :cond_14
.line 43
sget-object v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;->DEFAULT_STRING_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
goto :goto_c
.line 45
:cond_14
invoke-virtual {p1}, Ljava/lang/Class;->isPrimitive()Z
move-result v0
if-nez v0, :cond_22
const-class v0, Ljava/lang/Number;
invoke-virtual {v0, p1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v0
if-eqz v0, :cond_28
.line 48
:cond_22
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;
invoke-direct {v0, v1, p1}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;-><init>(ILjava/lang/Class;)V
goto :goto_c
.line 50
:cond_28
const-class v0, Ljava/lang/Class;
if-ne p1, v0, :cond_33
.line 51
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;
const/4 v1, 0x3
invoke-direct {v0, v1, p1}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;-><init>(ILjava/lang/Class;)V
goto :goto_c
.line 53
:cond_33
const-class v0, Ljava/util/Date;
invoke-virtual {v0, p1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v0
if-eqz v0, :cond_42
.line 54
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;
const/4 v1, 0x1
invoke-direct {v0, v1, p1}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;-><init>(ILjava/lang/Class;)V
goto :goto_c
.line 56
:cond_42
const-class v0, Ljava/util/Calendar;
invoke-virtual {v0, p1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v0
if-eqz v0, :cond_51
.line 57
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;
const/4 v1, 0x2
invoke-direct {v0, v1, p1}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;-><init>(ILjava/lang/Class;)V
goto :goto_c
.line 60
:cond_51
const-class v0, Ljava/util/UUID;
if-ne p1, v0, :cond_5b
.line 61
new-instance v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;
invoke-direct {v0, v1, p1}, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers$Default;-><init>(ILjava/lang/Class;)V
goto :goto_c
.line 63
:cond_5b
if-eqz p2, :cond_60
.line 64
sget-object v0, Lcom/fasterxml/jackson/databind/ser/std/StdKeySerializers;->DEFAULT_KEY_SERIALIZER:Lcom/fasterxml/jackson/databind/JsonSerializer;
goto :goto_c
.line 66
:cond_60
const/4 v0, 0x0
goto :goto_c
.end method