Replace gson mapper with jackson mapper
[cps.git] / cps-ncmp-service / src / main / java / org / onap / cps / ncmp / api / impl / operations / DmiModelOperations.java
index 20a3309..1ce6dcf 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  ============LICENSE_START=======================================================
- *  Copyright (C) 2021 Nordix Foundation
+ *  Copyright (C) 2021-2022 Nordix Foundation
  *  ================================================================================
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
@@ -22,7 +22,6 @@ package org.onap.cps.ncmp.api.impl.operations;
 
 import static org.onap.cps.ncmp.api.impl.operations.RequiredDmiService.MODEL;
 
-import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
 import java.util.ArrayList;
@@ -34,10 +33,14 @@ import org.onap.cps.ncmp.api.impl.config.NcmpConfiguration;
 import org.onap.cps.ncmp.api.models.PersistenceCmHandle;
 import org.onap.cps.ncmp.api.models.YangResource;
 import org.onap.cps.spi.model.ModuleReference;
+import org.onap.cps.utils.JsonObjectMapper;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
 
+/**
+ * Operations class for DMI Model.
+ */
 @Component
 public class DmiModelOperations extends DmiOperations {
 
@@ -47,10 +50,10 @@ public class DmiModelOperations extends DmiOperations {
      * @param dmiRestClient {@code DmiRestClient}
      */
     public DmiModelOperations(final PersistenceCmHandleRetriever cmHandlePropertiesRetriever,
-                              final ObjectMapper objectMapper,
+                              final JsonObjectMapper jsonObjectMapper,
                               final NcmpConfiguration.DmiProperties dmiProperties,
                               final DmiRestClient dmiRestClient) {
-        super(cmHandlePropertiesRetriever, objectMapper, dmiProperties, dmiRestClient);
+        super(cmHandlePropertiesRetriever, jsonObjectMapper, dmiProperties, dmiRestClient);
     }
 
     /**
@@ -65,7 +68,7 @@ public class DmiModelOperations extends DmiOperations {
         dmiRequestBody.asCmHandleProperties(persistenceCmHandle.getAdditionalProperties());
         final ResponseEntity<Object> dmiFetchModulesResponseEntity = getResourceFromDmiWithJsonData(
             persistenceCmHandle.resolveDmiServiceName(MODEL),
-            getDmiRequestBodyAsString(dmiRequestBody), persistenceCmHandle.getId(), "modules");
+                jsonObjectMapper.asJsonString(dmiRequestBody), persistenceCmHandle.getId(), "modules");
         return toModuleReferences((Map) dmiFetchModulesResponseEntity.getBody());
     }
 
@@ -144,7 +147,7 @@ public class DmiModelOperations extends DmiOperations {
             if (moduleReferencesAsList != null) {
                 moduleReferencesAsList.forEach(moduleReferenceAsMap -> {
                     final ModuleReference moduleReference =
-                        objectMapper.convertValue(moduleReferenceAsMap, ModuleReference.class);
+                            jsonObjectMapper.convertToValueType(moduleReferenceAsMap, ModuleReference.class);
                     moduleReferences.add(moduleReference);
                 });
             }
@@ -159,7 +162,7 @@ public class DmiModelOperations extends DmiOperations {
         if (yangResourcesAsList != null) {
             yangResourcesAsList.forEach(yangResourceAsMap -> {
                 final YangResource yangResource =
-                    objectMapper.convertValue(yangResourceAsMap, YangResource.class);
+                        jsonObjectMapper.convertToValueType(yangResourceAsMap, YangResource.class);
                 yangResourcesModuleNameToContentMap.put(yangResource.getModuleName(),
                     yangResource.getYangSource());
             });