Merge "update portal url"
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / common / util / JsonUtils.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.common.util;
22
23 import com.google.gson.JsonElement;
24 import com.google.gson.JsonObject;
25
26 public class JsonUtils {
27
28         public static String toString(JsonElement jsonElement) {
29
30                 if (jsonElement == null) {
31                         return null;
32                 }
33
34                 if (false == jsonElement.isJsonNull()) {
35                         if (false == jsonElement.isJsonObject()) {
36                                 return jsonElement.getAsString();
37                         } else {
38                                 return jsonElement.toString();
39                         }
40                 } else {
41                         return null;
42                 }
43
44         }
45
46         public static boolean containsEntry(JsonObject json, String key) {
47                 return json.get(key) != null;
48         }
49
50         public static boolean isEmptyJson(JsonObject json) {
51                 return json.entrySet().isEmpty();
52         }
53
54         public static boolean isEmptyJson(JsonElement json) {
55                 return json.isJsonPrimitive() ? false : JsonUtils.isEmptyJson(json.getAsJsonObject());
56         }
57         
58         public static boolean isJsonNullOrEmpty(JsonObject json) {
59                 return json.isJsonNull() || isEmptyJson(json);
60         }
61 }