Skip to content

Commit

Permalink
fixup! fixup! fixup! Support for jsonformat in duration deserializer …
Browse files Browse the repository at this point in the history
…based on Duration::of(long,TemporalUnit). ref FasterXML#184
  • Loading branch information
obarcelonap committed Oct 13, 2020
1 parent f782c49 commit ea37ddc
Showing 1 changed file with 9 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,11 @@ protected DurationDeserializer(DurationDeserializer base, Boolean leniency) {
super(base, leniency);
}

protected DurationDeserializer(DurationDeserializer base, DurationPattern durationPattern) {
super(base, base._isLenient);
_durationPattern = durationPattern;
}

@Override
protected DurationDeserializer withLeniency(Boolean leniency) {
return new DurationDeserializer(this, leniency);
Expand All @@ -89,18 +94,16 @@ public JsonDeserializer<?> createContextual(DeserializationContext ctxt,
}
}
if (format.hasPattern()) {
this._durationPattern = DurationPattern.from(format.getPattern())
.orElse(null);
} else {
this._durationPattern = null;
deser = DurationPattern.from(format.getPattern())
.map(deser::withPattern)
.orElse(deser);
}
}
return deser;
}

private DurationDeserializer withPattern(DurationPattern pattern) {
this._durationPattern = pattern;
return this;
return new DurationDeserializer(this, pattern);
}

@Override
Expand Down

0 comments on commit ea37ddc

Please sign in to comment.