diff options
author | Jim Hahn <jrh3@att.com> | 2021-02-18 17:15:07 -0500 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2021-02-18 17:24:26 -0500 |
commit | 758cd2e691950843415515ba6df2295679bd938b (patch) | |
tree | 1c3acdcf18a04f655b6e642fc80a7d8630934f24 /gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java | |
parent | 00ee2d5b4f1e847d8e272c79f66230aa30cb11d6 (diff) |
Remove duplicate code from type adapters
Extracted a common superclass, StringTypeAdapter, out of the gson type
adapter classes.
Issue-ID: POLICY-2914
Change-Id: I4bbd2a6e8372e7f42c4952ba9ff03eed97473fb2
Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java')
-rw-r--r-- | gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java | 33 |
1 files changed, 3 insertions, 30 deletions
diff --git a/gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java b/gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java index eb91ac4f..60758ff3 100644 --- a/gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java +++ b/gson/src/main/java/org/onap/policy/common/gson/ZoneOffsetTypeAdapter.java @@ -20,38 +20,11 @@ package org.onap.policy.common.gson; -import com.google.gson.JsonParseException; -import com.google.gson.TypeAdapter; -import com.google.gson.stream.JsonReader; -import com.google.gson.stream.JsonToken; -import com.google.gson.stream.JsonWriter; -import java.io.IOException; -import java.time.DateTimeException; import java.time.ZoneOffset; -public class ZoneOffsetTypeAdapter extends TypeAdapter<ZoneOffset> { +public class ZoneOffsetTypeAdapter extends StringTypeAdapter<ZoneOffset> { - @Override - public ZoneOffset read(JsonReader in) throws IOException { - try { - if (in.peek() == JsonToken.NULL) { - in.nextNull(); - return null; - } else { - return ZoneOffset.of(in.nextString()); - } - - } catch (DateTimeException e) { - throw new JsonParseException("invalid zone", e); - } - } - - @Override - public void write(JsonWriter out, ZoneOffset value) throws IOException { - if (value == null) { - out.nullValue(); - } else { - out.value(value.toString()); - } + public ZoneOffsetTypeAdapter() { + super("zone", ZoneOffset::of, ZoneOffset::toString); } } |