2 * Copyright © 2017-2018 AT&T Intellectual Property.
\r
3 * Modifications Copyright © 2018 IBM.
\r
5 * Licensed under the Apache License, Version 2.0 (the "License");
\r
6 * you may not use this file except in compliance with the License.
\r
7 * You may obtain a copy of the License at
\r
9 * http://www.apache.org/licenses/LICENSE-2.0
\r
11 * Unless required by applicable law or agreed to in writing, software
\r
12 * distributed under the License is distributed on an "AS IS" BASIS,
\r
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
14 * See the License for the specific language governing permissions and
\r
15 * limitations under the License.
\r
18 package org.onap.ccsdk.features.model.utils;
\r
20 import org.onap.ccsdk.features.model.ValidTypes;
\r
21 import com.fasterxml.jackson.databind.JsonNode;
\r
22 import com.fasterxml.jackson.databind.node.ArrayNode;
\r
23 import com.fasterxml.jackson.databind.node.NullNode;
\r
24 import com.fasterxml.jackson.databind.node.ObjectNode;
\r
27 * JsonUtils.java Purpose: Provide Configuration Generator JsonUtils Information
\r
31 public class JsonUtils {
\r
33 private JsonUtils() {
\r
37 public static void populatePrimitiveValues(String key, Object value, String primitiveType, ObjectNode objectNode) {
\r
38 if (ValidTypes.DATA_TYPE_BOOLEAN.equals(primitiveType)) {
\r
39 objectNode.put(key, (Boolean) value);
\r
40 } else if (ValidTypes.DATA_TYPE_INTEGER.equals(primitiveType)) {
\r
41 objectNode.put(key, (Integer) value);
\r
42 } else if (ValidTypes.DATA_TYPE_FLOAT.equals(primitiveType)) {
\r
43 objectNode.put(key, (Float) value);
\r
44 } else if (ValidTypes.DATA_TYPE_TIMESTAMP.equals(primitiveType)) {
\r
45 objectNode.put(key, (String) value);
\r
47 objectNode.put(key, (String) value);
\r
51 public static void populatePrimitiveValues(Object value, String primitiveType, ArrayNode objectNode) {
\r
52 if (ValidTypes.DATA_TYPE_BOOLEAN.equals(primitiveType)) {
\r
53 objectNode.add((Boolean) value);
\r
54 } else if (ValidTypes.DATA_TYPE_INTEGER.equals(primitiveType)) {
\r
55 objectNode.add((Integer) value);
\r
56 } else if (ValidTypes.DATA_TYPE_FLOAT.equals(primitiveType)) {
\r
57 objectNode.add((Float) value);
\r
58 } else if (ValidTypes.DATA_TYPE_TIMESTAMP.equals(primitiveType)) {
\r
59 objectNode.add((String) value);
\r
61 objectNode.add((String) value);
\r
65 public static void populatePrimitiveDefaultValues(String key, String primitiveType, ObjectNode objectNode) {
\r
66 if (ValidTypes.DATA_TYPE_BOOLEAN.equals(primitiveType)) {
\r
67 objectNode.put(key, false);
\r
68 } else if (ValidTypes.DATA_TYPE_INTEGER.equals(primitiveType)) {
\r
69 objectNode.put(key, 0);
\r
70 } else if (ValidTypes.DATA_TYPE_FLOAT.equals(primitiveType)) {
\r
71 objectNode.put(key, 0.0);
\r
73 objectNode.put(key, "");
\r
77 public static void populatePrimitiveDefaultValuesForArrayNode(String primitiveType, ArrayNode arrayNode) {
\r
78 if (ValidTypes.DATA_TYPE_BOOLEAN.equals(primitiveType)) {
\r
79 arrayNode.add(false);
\r
80 } else if (ValidTypes.DATA_TYPE_INTEGER.equals(primitiveType)) {
\r
82 } else if (ValidTypes.DATA_TYPE_FLOAT.equals(primitiveType)) {
\r
89 public static void populateJsonNodeValues(String key, JsonNode nodeValue, String type, ObjectNode objectNode) {
\r
90 if (nodeValue == null || nodeValue instanceof NullNode) {
\r
91 objectNode.put(key, nodeValue);
\r
92 } else if (ValidTypes.getPrimitivePropertType().contains(type)) {
\r
93 if (ValidTypes.DATA_TYPE_BOOLEAN.equals(type)) {
\r
94 objectNode.put(key, nodeValue.asBoolean());
\r
95 } else if (ValidTypes.DATA_TYPE_INTEGER.equals(type)) {
\r
96 objectNode.put(key, nodeValue.asInt());
\r
97 } else if (ValidTypes.DATA_TYPE_FLOAT.equals(type)) {
\r
98 objectNode.put(key, nodeValue.floatValue());
\r
99 } else if (ValidTypes.DATA_TYPE_TIMESTAMP.equals(type)) {
\r
100 objectNode.put(key, nodeValue.asText());
\r
102 objectNode.put(key, nodeValue.asText());
\r
105 objectNode.set(key, nodeValue);
\r