DCAE-D be initial commit
[sdc/dcae-d/dt-be-main.git] / dcaedt_be / src / main / java / org / onap / sdc / dcae / ves / VesJsonDeserializer.java
1 package org.onap.sdc.dcae.ves;
2
3 import com.google.gson.*;
4
5 import java.lang.reflect.Type;
6
7 // json 'items' value can be either a single object or an array. customized POJO will always be an array
8 public class VesJsonDeserializer implements JsonDeserializer<VesDataItemsDefinition> {
9         @Override
10         public VesDataItemsDefinition deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
11
12                 if(json instanceof JsonArray){
13                          return new Gson().fromJson(json, VesDataItemsDefinition.class);
14                 }
15
16                 VesDataItemsDefinition items = new VesDataItemsDefinition();
17                 items.add(new Gson().fromJson(json, VesDataTypeDefinition.class));
18                 return items;
19         }
20 }