summaryrefslogtreecommitdiffstats
path: root/dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java
diff options
context:
space:
mode:
authorStone, Avi (as206k) <as206k@att.com>2018-04-12 15:46:31 +0300
committerStone, Avi (as206k) <as206k@att.com>2018-04-12 15:49:38 +0300
commit5032434b101f25fa44d2e1f8dc8393e30af1ed4f (patch)
tree2dc7d37a8048e025c7412af080640da4c9a22b65 /dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java
parent2205633792f95f46a02bbf8f87f0c2637265d924 (diff)
DCAE-D be initial commit
DCAE-D be initial commit Issue-ID: SDC-1218 Change-Id: Id18ba96c499e785aa9ac395fbaf32d57f08c281b Signed-off-by: Stone, Avi (as206k) <as206k@att.com>
Diffstat (limited to 'dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java')
-rw-r--r--dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java b/dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java
new file mode 100644
index 0000000..f5cfd2a
--- /dev/null
+++ b/dcaedt_be/src/main/java/org/onap/sdc/dcae/ves/VesJsonDeserializer.java
@@ -0,0 +1,20 @@
+package org.onap.sdc.dcae.ves;
+
+import com.google.gson.*;
+
+import java.lang.reflect.Type;
+
+// json 'items' value can be either a single object or an array. customized POJO will always be an array
+public class VesJsonDeserializer implements JsonDeserializer<VesDataItemsDefinition> {
+ @Override
+ public VesDataItemsDefinition deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
+
+ if(json instanceof JsonArray){
+ return new Gson().fromJson(json, VesDataItemsDefinition.class);
+ }
+
+ VesDataItemsDefinition items = new VesDataItemsDefinition();
+ items.add(new Gson().fromJson(json, VesDataTypeDefinition.class));
+ return items;
+ }
+}