public class com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer extends com.fasterxml.jackson.datatype.joda.deser.JodaDeserializerBase<org.joda.time.ReadablePeriod>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer
super_class: com.fasterxml.jackson.datatype.joda.deser.JodaDeserializerBase
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private final com.fasterxml.jackson.datatype.joda.cfg.JacksonJodaPeriodFormat _format;
descriptor: Lcom/fasterxml/jackson/datatype/joda/cfg/JacksonJodaPeriodFormat;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean _requireFullPeriod;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokespecial com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer.<init>:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/datatype/joda/deser/PeriodDeserializer;
public void <init>(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
ifeq 1
ldc Lorg/joda/time/Period;
goto 2
StackMap locals:
StackMap stack: uninitialized-this
1: ldc Lorg/joda/time/ReadablePeriod;
StackMap locals: uninitialized-this int
StackMap stack: uninitialized-this java.lang.Class
2: invokespecial com.fasterxml.jackson.datatype.joda.deser.JodaDeserializerBase.<init>:(Ljava/lang/Class;)V
3: aload 0
getstatic com.fasterxml.jackson.datatype.joda.cfg.FormatConfig.DEFAULT_PERIOD_FORMAT:Lcom/fasterxml/jackson/datatype/joda/cfg/JacksonJodaPeriodFormat;
putfield com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer._format:Lcom/fasterxml/jackson/datatype/joda/cfg/JacksonJodaPeriodFormat;
4: aload 0
iload 1
putfield com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer._requireFullPeriod:Z
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/jackson/datatype/joda/deser/PeriodDeserializer;
0 6 1 fullPeriod Z
MethodParameters:
Name Flags
fullPeriod
public org.joda.time.ReadablePeriod deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Lorg/joda/time/ReadablePeriod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getCurrentToken:()Lcom/fasterxml/jackson/core/JsonToken;
astore 3
start local 3 1: aload 3
getstatic com.fasterxml.jackson.core.JsonToken.VALUE_STRING:Lcom/fasterxml/jackson/core/JsonToken;
if_acmpne 6
2: aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getText:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 4
start local 4 3: aload 4
invokevirtual java.lang.String.isEmpty:()Z
ifeq 5
4: aconst_null
areturn
5: StackMap locals: com.fasterxml.jackson.core.JsonToken java.lang.String
StackMap stack:
aload 0
getfield com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer._format:Lcom/fasterxml/jackson/datatype/joda/cfg/JacksonJodaPeriodFormat;
aload 2
aload 4
invokevirtual com.fasterxml.jackson.datatype.joda.cfg.JacksonJodaPeriodFormat.parsePeriod:(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lorg/joda/time/Period;
areturn
end local 4 6: StackMap locals:
StackMap stack:
aload 3
getstatic com.fasterxml.jackson.core.JsonToken.VALUE_NUMBER_INT:Lcom/fasterxml/jackson/core/JsonToken;
if_acmpne 8
7: new org.joda.time.Period
dup
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.getLongValue:()J
invokespecial org.joda.time.Period.<init>:(J)V
areturn
8: StackMap locals:
StackMap stack:
aload 3
getstatic com.fasterxml.jackson.core.JsonToken.START_OBJECT:Lcom/fasterxml/jackson/core/JsonToken;
if_acmpeq 12
aload 3
getstatic com.fasterxml.jackson.core.JsonToken.FIELD_NAME:Lcom/fasterxml/jackson/core/JsonToken;
if_acmpeq 12
9: aload 2
aload 0
invokevirtual com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer.handledType:()Ljava/lang/Class;
aload 3
aload 1
10: ldc "expected JSON Number, String or Object"
iconst_0
anewarray java.lang.Object
11: invokevirtual com.fasterxml.jackson.databind.DeserializationContext.handleUnexpectedToken:(Ljava/lang/Class;Lcom/fasterxml/jackson/core/JsonToken;Lcom/fasterxml/jackson/core/JsonParser;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.joda.time.ReadablePeriod
areturn
12: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.fasterxml.jackson.core.JsonParser.readValueAsTree:()Lcom/fasterxml/jackson/core/TreeNode;
checkcast com.fasterxml.jackson.databind.JsonNode
astore 4
start local 4 13: aload 4
ldc "fieldType"
invokevirtual com.fasterxml.jackson.databind.JsonNode.path:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
ldc "name"
invokevirtual com.fasterxml.jackson.databind.JsonNode.path:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 5
start local 5 14: aload 4
ldc "periodType"
invokevirtual com.fasterxml.jackson.databind.JsonNode.path:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
ldc "name"
invokevirtual com.fasterxml.jackson.databind.JsonNode.path:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 6
start local 6 15: aload 4
aload 5
invokevirtual com.fasterxml.jackson.databind.JsonNode.path:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asInt:()I
istore 7
start local 7 16: aload 6
ldc "Seconds"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
17: iload 7
invokestatic org.joda.time.Seconds.seconds:(I)Lorg/joda/time/Seconds;
astore 8
start local 8 18: goto 42
end local 8 19: StackMap locals: com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer com.fasterxml.jackson.core.JsonParser com.fasterxml.jackson.databind.DeserializationContext com.fasterxml.jackson.core.JsonToken com.fasterxml.jackson.databind.JsonNode java.lang.String java.lang.String int
StackMap stack:
aload 6
ldc "Minutes"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
20: iload 7
invokestatic org.joda.time.Minutes.minutes:(I)Lorg/joda/time/Minutes;
astore 8
start local 8 21: goto 42
end local 8 22: StackMap locals:
StackMap stack:
aload 6
ldc "Hours"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
23: iload 7
invokestatic org.joda.time.Hours.hours:(I)Lorg/joda/time/Hours;
astore 8
start local 8 24: goto 42
end local 8 25: StackMap locals:
StackMap stack:
aload 6
ldc "Days"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
26: iload 7
invokestatic org.joda.time.Days.days:(I)Lorg/joda/time/Days;
astore 8
start local 8 27: goto 42
end local 8 28: StackMap locals:
StackMap stack:
aload 6
ldc "Weeks"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
29: iload 7
invokestatic org.joda.time.Weeks.weeks:(I)Lorg/joda/time/Weeks;
astore 8
start local 8 30: goto 42
end local 8 31: StackMap locals:
StackMap stack:
aload 6
ldc "Months"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 34
32: iload 7
invokestatic org.joda.time.Months.months:(I)Lorg/joda/time/Months;
astore 8
start local 8 33: goto 42
end local 8 34: StackMap locals:
StackMap stack:
aload 6
ldc "Years"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 37
35: iload 7
invokestatic org.joda.time.Years.years:(I)Lorg/joda/time/Years;
astore 8
start local 8 36: goto 42
end local 8 37: StackMap locals:
StackMap stack:
aload 2
aload 0
invokevirtual com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer.handledType:()Ljava/lang/Class;
38: ldc "Don't know how to deserialize %s using periodName '%s'"
iconst_2
anewarray java.lang.Object
dup
iconst_0
39: aload 0
invokevirtual com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer.handledType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 6
aastore
40: invokevirtual com.fasterxml.jackson.databind.DeserializationContext.reportInputMismatch:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
pop
41: aconst_null
astore 8
start local 8 42: StackMap locals: org.joda.time.ReadablePeriod
StackMap stack:
aload 0
getfield com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer._requireFullPeriod:Z
ifeq 44
aload 8
instanceof org.joda.time.Period
ifne 44
43: aload 8
invokeinterface org.joda.time.ReadablePeriod.toPeriod:()Lorg/joda/time/Period;
astore 8
44: StackMap locals:
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lcom/fasterxml/jackson/datatype/joda/deser/PeriodDeserializer;
0 45 1 p Lcom/fasterxml/jackson/core/JsonParser;
0 45 2 ctxt Lcom/fasterxml/jackson/databind/DeserializationContext;
1 45 3 t Lcom/fasterxml/jackson/core/JsonToken;
3 6 4 str Ljava/lang/String;
13 45 4 treeNode Lcom/fasterxml/jackson/databind/JsonNode;
14 45 5 periodType Ljava/lang/String;
15 45 6 periodName Ljava/lang/String;
16 45 7 periodValue I
18 19 8 rp Lorg/joda/time/ReadablePeriod;
21 22 8 rp Lorg/joda/time/ReadablePeriod;
24 25 8 rp Lorg/joda/time/ReadablePeriod;
27 28 8 rp Lorg/joda/time/ReadablePeriod;
30 31 8 rp Lorg/joda/time/ReadablePeriod;
33 34 8 rp Lorg/joda/time/ReadablePeriod;
36 37 8 rp Lorg/joda/time/ReadablePeriod;
42 45 8 rp Lorg/joda/time/ReadablePeriod;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
p
ctxt
public java.lang.Object deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual com.fasterxml.jackson.datatype.joda.deser.PeriodDeserializer.deserialize:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Lorg/joda/time/ReadablePeriod;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException, com.fasterxml.jackson.core.JsonProcessingException
public java.lang.Object deserializeWithType(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.jsontype.TypeDeserializer);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/jsontype/TypeDeserializer;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
invokespecial com.fasterxml.jackson.datatype.joda.deser.JodaDeserializerBase.deserializeWithType:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;Lcom/fasterxml/jackson/databind/jsontype/TypeDeserializer;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
public java.lang.Object _handleNotNumberOrString(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext);
descriptor: (Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokespecial com.fasterxml.jackson.datatype.joda.deser.JodaDeserializerBase._handleNotNumberOrString:(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
}
Signature: Lcom/fasterxml/jackson/datatype/joda/deser/JodaDeserializerBase<Lorg/joda/time/ReadablePeriod;>;
SourceFile: "PeriodDeserializer.java"