summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-rest/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'cps-ncmp-rest/src/main')
-rwxr-xr-xcps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java76
1 files changed, 70 insertions, 6 deletions
diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java
index 484a21ae65..e9e022345f 100755
--- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java
+++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java
@@ -21,46 +21,75 @@
package org.onap.cps.ncmp.rest.controller;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import java.util.Collection;
import javax.validation.Valid;
import org.onap.cps.ncmp.api.NetworkCmProxyDataService;
+import org.onap.cps.ncmp.api.models.DmiPluginRegistration;
import org.onap.cps.ncmp.rest.api.NetworkCmProxyApi;
+import org.onap.cps.ncmp.rest.model.RestDmiPluginRegistration;
import org.onap.cps.spi.FetchDescendantsOption;
import org.onap.cps.spi.model.DataNode;
import org.onap.cps.utils.DataMapUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-
@RestController
@RequestMapping("${rest.api.ncmp-base-path}")
public class NetworkCmProxyController implements NetworkCmProxyApi {
private static final Gson GSON = new GsonBuilder().create();
- @Autowired
- private NetworkCmProxyDataService networkCmProxyDataService;
+ private final NetworkCmProxyDataService networkCmProxyDataService;
+ private final ObjectMapper objectMapper;
+
+ /**
+ * Constructor Injection for Dependencies.
+ * @param networkCmProxyDataService Data Service Interface
+ * @param objectMapper Object Mapper
+ */
+ public NetworkCmProxyController(final NetworkCmProxyDataService networkCmProxyDataService,
+ final ObjectMapper objectMapper) {
+ this.networkCmProxyDataService = networkCmProxyDataService;
+ this.objectMapper = objectMapper;
+ }
+
+ /**
+ * Create Node.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
@Override
- public ResponseEntity<String> createNode(final String jsonData, final String cmHandle,
+ @Deprecated(forRemoval = false)
+ public ResponseEntity<Void> createNode(final String jsonData, final String cmHandle,
final String parentNodeXpath) {
networkCmProxyDataService.createDataNode(cmHandle, parentNodeXpath, jsonData);
return new ResponseEntity<>(HttpStatus.CREATED);
}
+ /**
+ * Add List-node Child Element.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
@Override
- public ResponseEntity<String> addListNodeElements(final String jsonData, final String parentNodeXpath,
+ @Deprecated(forRemoval = false)
+ public ResponseEntity<Void> addListNodeElements(final String jsonData, final String parentNodeXpath,
final String cmHandle) {
networkCmProxyDataService.addListNodeElements(cmHandle, parentNodeXpath, jsonData);
return new ResponseEntity<>(HttpStatus.CREATED);
}
+ /**
+ * Get Node By CM Handle and X-Path.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
@Override
+ @Deprecated(forRemoval = false)
public ResponseEntity<Object> getNodeByCmHandleAndXpath(final String cmHandle, @Valid final String xpath,
@Valid final Boolean includeDescendants) {
final FetchDescendantsOption fetchDescendantsOption = Boolean.TRUE.equals(includeDescendants)
@@ -69,7 +98,25 @@ public class NetworkCmProxyController implements NetworkCmProxyApi {
return new ResponseEntity<>(DataMapUtils.toDataMap(dataNode), HttpStatus.OK);
}
+ /**
+ * Update DMI Plugin Registration (used for first registration also).
+ * @param restDmiPluginRegistration the registration data
+ */
@Override
+ public ResponseEntity<Void> updateDmiPluginRegistration(
+ final @Valid RestDmiPluginRegistration restDmiPluginRegistration) {
+ final DmiPluginRegistration dmiPluginRegistration =
+ convertRestObjectToJavaApiObject(restDmiPluginRegistration);
+ networkCmProxyDataService.updateDmiPluginRegistration(dmiPluginRegistration);
+ return new ResponseEntity<>(HttpStatus.CREATED);
+ }
+
+ /**
+ * Query Data Nodes.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
+ @Override
+ @Deprecated(forRemoval = false)
public ResponseEntity<Object> queryNodesByCmHandleAndCpsPath(final String cmHandle, @Valid final String cpsPath,
@Valid final Boolean includeDescendants) {
final FetchDescendantsOption fetchDescendantsOption = Boolean.TRUE.equals(includeDescendants)
@@ -79,17 +126,34 @@ public class NetworkCmProxyController implements NetworkCmProxyApi {
return new ResponseEntity<>(GSON.toJson(dataNodes), HttpStatus.OK);
}
+ /**
+ * Replace Node With Descendants.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
@Override
+ @Deprecated(forRemoval = false)
public ResponseEntity<Object> replaceNode(@Valid final String jsonData, final String cmHandle,
@Valid final String parentNodeXpath) {
networkCmProxyDataService.replaceNodeTree(cmHandle, parentNodeXpath, jsonData);
return new ResponseEntity<>(HttpStatus.OK);
}
+ /**
+ * Update Node Leaves.
+ * @deprecated This Method is no longer used as part of NCMP.
+ */
@Override
+ @Deprecated(forRemoval = false)
public ResponseEntity<Object> updateNodeLeaves(@Valid final String jsonData, final String cmHandle,
@Valid final String parentNodeXpath) {
networkCmProxyDataService.updateNodeLeaves(cmHandle, parentNodeXpath, jsonData);
return new ResponseEntity<>(HttpStatus.OK);
}
+
+
+ private DmiPluginRegistration convertRestObjectToJavaApiObject(
+ final RestDmiPluginRegistration restDmiPluginRegistration) {
+ return objectMapper.convertValue(restDmiPluginRegistration, DmiPluginRegistration.class);
+ }
+
}