X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cps-ncmp-rest%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fcps%2Fncmp%2Frest%2Fcontroller%2FNetworkCmProxyController.java;h=3b44b80f6d33a670d5745c89852712bd63387d00;hb=eeef2ae7d17fcff7fbd33614972ad42f495e7998;hp=19b9a09daa64c88f1a051987e7e2eaeb9a039512;hpb=b6fe4eb602206e5495423ff8614eb5238829d115;p=cps.git 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 19b9a09da..3b44b80f6 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 @@ -22,6 +22,11 @@ package org.onap.cps.ncmp.rest.controller; +import static org.onap.cps.ncmp.api.impl.operations.DmiRequestBody.OperationEnum.CREATE; +import static org.onap.cps.ncmp.api.impl.operations.DmiRequestBody.OperationEnum.DELETE; +import static org.onap.cps.ncmp.api.impl.operations.DmiRequestBody.OperationEnum.PATCH; +import static org.onap.cps.ncmp.api.impl.operations.DmiRequestBody.OperationEnum.UPDATE; + import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.util.ArrayList; @@ -132,12 +137,6 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { return new ResponseEntity<>(HttpStatus.OK); } - @Override - public ResponseEntity updateResourceDataRunningForCmHandle(final String cmHandle, - final String resourceIdentifier, final String requestBody, final String contentType) { - return new ResponseEntity<>(HttpStatus.NOT_IMPLEMENTED); - } - /** * Update Node Leaves. * @deprecated This Method is no longer used as part of NCMP. @@ -192,36 +191,95 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { return ResponseEntity.ok(responseObject); } + @Override + public ResponseEntity patchResourceDataRunningForCmHandle(final String resourceIdentifier, + final String cmHandle, + final Object requestBody, final String contentType) { + networkCmProxyDataService.writeResourceDataPassThroughRunningForCmHandle(cmHandle, + resourceIdentifier, PATCH, requestBody.toString(), contentType); + return new ResponseEntity<>(HttpStatus.OK); + } + /** - * Create resource data in datastore pass through running - * for given cm-handle. + * Create resource data in datastore pass-through running for given cm-handle. * * @param resourceIdentifier resource identifier * @param cmHandle cm handle identifier - * @param requestBody requestBody + * @param requestBody the request body * @param contentType content type of body - * @return {@code ResponseEntity} response from dmi plugi + * @return {@code ResponseEntity} response from dmi plugin */ @Override public ResponseEntity createResourceDataRunningForCmHandle(final String resourceIdentifier, final String cmHandle, final String requestBody, final String contentType) { - networkCmProxyDataService.createResourceDataPassThroughRunningForCmHandle(cmHandle, - resourceIdentifier, requestBody, contentType); + networkCmProxyDataService.writeResourceDataPassThroughRunningForCmHandle(cmHandle, + resourceIdentifier, CREATE, requestBody, contentType); return new ResponseEntity<>(HttpStatus.CREATED); } + /** + * Update resource data in datastore pass-through running for given cm-handle. + * + * @param resourceIdentifier resource identifier + * @param cmHandle cm handle identifier + * @param requestBody the request body + * @param contentType content type of the body + * @return response entity + */ + @Override + public ResponseEntity updateResourceDataRunningForCmHandle(final String resourceIdentifier, + final String cmHandle, + final String requestBody, + final String contentType) { + networkCmProxyDataService.writeResourceDataPassThroughRunningForCmHandle(cmHandle, + resourceIdentifier, UPDATE, requestBody, contentType); + return new ResponseEntity<>(HttpStatus.OK); + } + + + /** + * Delete resource data in datastore pass-through running for a given cm-handle. + * + * @param resourceIdentifier resource identifier + * @param cmHandle cm handle identifier + * @param requestBody the request body + * @param contentType content type of the body + * @return response entity no content if request is successful + */ + @Override + public ResponseEntity deleteResourceDataRunningForCmHandle(final String resourceIdentifier, + final String cmHandle, + final String requestBody, + final String contentType) { + + networkCmProxyDataService.writeResourceDataPassThroughRunningForCmHandle(cmHandle, + resourceIdentifier, DELETE, requestBody, contentType); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + /** + * Execute cm handle search. + * + * @param conditions the conditions + * @return cm handles returned from search. + */ @Override public ResponseEntity executeCmHandleSearch(final Conditions conditions) { final List conditionProperties = conditions.getConditions().stream().collect(Collectors.toList()); final CmHandles cmHandles = new CmHandles(); - final Collection cmHandleIdentifiers = processConditions(conditionProperties); - cmHandleIdentifiers.forEach(cmHandle -> cmHandles.setCmHandles(toCmHandleProperties(cmHandle))); + cmHandles.setCmHandles(toCmHandleProperties(processConditions(conditionProperties))); return ResponseEntity.ok(cmHandles); } + /** + * Return module references for a cm handle. + * + * @param cmHandle the cm handle + * @return module references for cm handle + */ @Override public ResponseEntity getModuleReferencesByCmHandle(final String cmHandle) { final Collection @@ -254,13 +312,13 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { return moduleNames; } - private CmHandleProperties toCmHandleProperties(final String cmHandleId) { + private CmHandleProperties toCmHandleProperties(final Collection cmHandleIdentifiers) { final CmHandleProperties cmHandleProperties = new CmHandleProperties(); - final CmHandleProperty cmHandleProperty = new CmHandleProperty(); - cmHandleProperty.setCmHandleId(cmHandleId); - cmHandleProperties.add(cmHandleProperty); + for (final String cmHandleIdentifier : cmHandleIdentifiers) { + final CmHandleProperty cmHandleProperty = new CmHandleProperty(); + cmHandleProperty.setCmHandleId(cmHandleIdentifier); + cmHandleProperties.add(cmHandleProperty); + } return cmHandleProperties; } - - }