X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-interactions%2Fmodel-impl%2Fappclcm%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fappclcm%2Futil%2FSerialization.java;h=54f9782f4494cba514263cac60219c3d2610c935;hb=9c5d23395918a739b591667edd77e3ced9cd4bfb;hp=d261c442c338edd139ae7ef9a923814ad7bec824;hpb=b150aa8197e8a21ab7ad4cf1d91cfa30f56fa3df;p=policy%2Fmodels.git diff --git a/models-interactions/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java b/models-interactions/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java index d261c442c..54f9782f4 100644 --- a/models-interactions/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java +++ b/models-interactions/model-impl/appclcm/src/main/java/org/onap/policy/appclcm/util/Serialization.java @@ -1,6 +1,6 @@ -/*- +/* * ============LICENSE_START======================================================= - * appc + * appclcm * ================================================================================ * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. * Modifications Copyright (C) 2019 Nordix Foundation. @@ -8,9 +8,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -26,61 +26,24 @@ import com.google.gson.GsonBuilder; import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonDeserializer; import com.google.gson.JsonElement; -import com.google.gson.JsonObject; import com.google.gson.JsonPrimitive; import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; - import java.lang.reflect.Type; import java.time.Instant; -import org.onap.policy.appclcm.LcmRequest; -import org.onap.policy.appclcm.LcmResponse; - public final class Serialization { public static final Gson gsonPretty = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() .registerTypeAdapter(Instant.class, new InstantAdapter()).create(); - public static final Gson gson = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() - .registerTypeAdapter(LcmRequest.class, new RequestAdapter()) - .registerTypeAdapter(LcmResponse.class, new ResponseAdapter()).create(); + public static final Gson gson = + new GsonBuilder().disableHtmlEscaping().registerTypeAdapter(Instant.class, new InstantAdapter()).create(); public static final Gson gsonJunit = new GsonBuilder().disableHtmlEscaping().setPrettyPrinting() .registerTypeAdapter(Instant.class, new InstantJunitAdapter()).create(); - private Serialization() {} - - public static class RequestAdapter implements JsonSerializer, JsonDeserializer { - - @Override - public JsonElement serialize(LcmRequest src, Type typeOfSrc, JsonSerializationContext context) { - JsonElement requestJson = gsonPretty.toJsonTree(src, LcmRequest.class); - JsonObject input = new JsonObject(); - input.add("input", requestJson); - - return input; - } - - @Override - public LcmRequest deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { - return gsonPretty.fromJson(json.getAsJsonObject().get("input"), LcmRequest.class); - } - } - - public static class ResponseAdapter implements JsonSerializer, JsonDeserializer { - - @Override - public JsonElement serialize(LcmResponse src, Type typeOfSrc, JsonSerializationContext context) { - JsonElement responseJson = gsonPretty.toJsonTree(src, LcmResponse.class); - JsonObject output = new JsonObject(); - output.add("output", responseJson); - return output; - } - - @Override - public LcmResponse deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) { - return gsonPretty.fromJson(json.getAsJsonObject().get("output"), LcmResponse.class); - } + private Serialization() { + // Private constructor to prevent subclassing } public static class InstantAdapter implements JsonSerializer, JsonDeserializer {