diff options
author | niamhcore <niamh.core@est.tech> | 2021-09-21 16:08:29 +0100 |
---|---|---|
committer | Niamh Core <niamh.core@est.tech> | 2021-09-22 15:47:16 +0000 |
commit | 4f431887d66854589354c7361f2614f76420d738 (patch) | |
tree | 73d3e3ac956c84cc024ecc5f8b76c6c60aca5c50 /src/main/java/org/onap | |
parent | fa11e9cb799b9738d2295abd4690c142639b9250 (diff) |
Add get modules response type to openapi
Issue-ID: CPS-657
Signed-off-by: niamhcore <niamh.core@est.tech>
Change-Id: Ifcd22b6e82aaf4993f9071ad56b524fe620afaf7
Diffstat (limited to 'src/main/java/org/onap')
3 files changed, 18 insertions, 19 deletions
diff --git a/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java b/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java index 37381fb1..9f192841 100644 --- a/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java +++ b/src/main/java/org/onap/cps/ncmp/dmi/rest/controller/DmiRestController.java @@ -32,6 +32,7 @@ import org.onap.cps.ncmp.dmi.model.DataAccessWriteRequest; import org.onap.cps.ncmp.dmi.model.DmiReadRequestBody; import org.onap.cps.ncmp.dmi.model.ModuleReference; import org.onap.cps.ncmp.dmi.model.ModuleSet; +import org.onap.cps.ncmp.dmi.model.YangResources; import org.onap.cps.ncmp.dmi.rest.api.DmiPluginApi; import org.onap.cps.ncmp.dmi.rest.api.DmiPluginInternalApi; import org.onap.cps.ncmp.dmi.service.DmiService; @@ -62,17 +63,14 @@ public class DmiRestController implements DmiPluginApi, DmiPluginInternalApi { } @Override - public ResponseEntity<Object> retrieveModuleResources(@Valid final DmiReadRequestBody dmiReadRequestBody, + public ResponseEntity<YangResources> retrieveModuleResources(@Valid final DmiReadRequestBody dmiReadRequestBody, final String cmHandle) { if (dmiReadRequestBody.getOperation().toString().equals("read")) { final var moduleReferenceList = convertRestObjectToJavaApiObject(dmiReadRequestBody); final var response = dmiService.getModuleResources(cmHandle, moduleReferenceList); - if (response.isEmpty()) { - return new ResponseEntity<>(response, HttpStatus.NOT_FOUND); - } return new ResponseEntity<>(response, HttpStatus.OK); } - return new ResponseEntity<>("Unsupported operation", HttpStatus.CONFLICT); + return new ResponseEntity<>(HttpStatus.CONFLICT); } /** diff --git a/src/main/java/org/onap/cps/ncmp/dmi/service/DmiService.java b/src/main/java/org/onap/cps/ncmp/dmi/service/DmiService.java index 7f79a04c..bd0dc600 100644 --- a/src/main/java/org/onap/cps/ncmp/dmi/service/DmiService.java +++ b/src/main/java/org/onap/cps/ncmp/dmi/service/DmiService.java @@ -26,6 +26,7 @@ import javax.validation.constraints.NotNull; import org.onap.cps.ncmp.dmi.exception.DmiException; import org.onap.cps.ncmp.dmi.model.ModuleReference; import org.onap.cps.ncmp.dmi.model.ModuleSet; +import org.onap.cps.ncmp.dmi.model.YangResources; /** * Interface for handling Dmi plugin Data. @@ -54,9 +55,9 @@ public interface DmiService { * * @param cmHandle cmHandle * @param modules a list of module data - * @return returns all module resources + * @return returns all yang resources */ - String getModuleResources(String cmHandle, List<ModuleReference> modules); + YangResources getModuleResources(String cmHandle, List<ModuleReference> modules); /** * This method use to fetch the resource data from cm handle for datastore pass-through operational and resource diff --git a/src/main/java/org/onap/cps/ncmp/dmi/service/DmiServiceImpl.java b/src/main/java/org/onap/cps/ncmp/dmi/service/DmiServiceImpl.java index 11668904..182bdd84 100644 --- a/src/main/java/org/onap/cps/ncmp/dmi/service/DmiServiceImpl.java +++ b/src/main/java/org/onap/cps/ncmp/dmi/service/DmiServiceImpl.java @@ -30,8 +30,6 @@ import java.util.List; import java.util.Map; import javax.validation.constraints.NotNull; import lombok.extern.slf4j.Slf4j; -import net.minidev.json.JSONArray; -import net.minidev.json.JSONObject; import org.apache.groovy.parser.antlr4.util.StringUtils; import org.onap.cps.ncmp.dmi.config.DmiPluginConfig.DmiPluginProperties; import org.onap.cps.ncmp.dmi.exception.CmHandleRegistrationException; @@ -46,6 +44,8 @@ import org.onap.cps.ncmp.dmi.model.ModuleSchemaProperties; import org.onap.cps.ncmp.dmi.model.ModuleSchemas; import org.onap.cps.ncmp.dmi.model.ModuleSet; import org.onap.cps.ncmp.dmi.model.ModuleSetSchemas; +import org.onap.cps.ncmp.dmi.model.YangResource; +import org.onap.cps.ncmp.dmi.model.YangResources; import org.onap.cps.ncmp.dmi.service.client.NcmpRestClient; import org.onap.cps.ncmp.dmi.service.operation.SdncOperations; import org.springframework.http.HttpStatus; @@ -100,13 +100,13 @@ public class DmiServiceImpl implements DmiService { } @Override - public String getModuleResources(final String cmHandle, final List<ModuleReference> moduleReferences) { - final var getModuleResponses = new JSONArray(); + public YangResources getModuleResources(final String cmHandle, final List<ModuleReference> moduleReferences) { + final YangResources yangResources = new YangResources(); for (final var moduleReference : moduleReferences) { final var moduleRequest = createModuleRequest(moduleReference); final ResponseEntity<String> responseEntity = sdncOperations.getModuleResource(cmHandle, moduleRequest); if (responseEntity.getStatusCode() == HttpStatus.OK) { - getModuleResponses.add(toJsonObject(moduleReference, responseEntity)); + yangResources.add(toYangResource(moduleReference, responseEntity)); } else if (responseEntity.getStatusCode() == HttpStatus.NOT_FOUND) { log.error("SDNC did not return a module resource for the given cmHandle {}", cmHandle); throw new ModuleResourceNotFoundException(cmHandle, @@ -117,7 +117,7 @@ public class DmiServiceImpl implements DmiService { RESPONSE_CODE + responseEntity.getStatusCode() + MESSAGE + responseEntity.getBody()); } } - return getModuleResponses.toJSONString(); + return yangResources; } @Override @@ -248,13 +248,13 @@ public class DmiServiceImpl implements DmiService { return moduleRequest; } - private JSONObject toJsonObject(final ModuleReference moduleReference, + private YangResource toYangResource(final ModuleReference moduleReference, final ResponseEntity<String> response) { - final var jsonObject = new JSONObject(); - jsonObject.put("moduleName", moduleReference.getName()); - jsonObject.put("revision", moduleReference.getRevision()); - jsonObject.put("yangSource", extractYangSourceFromBody(response)); - return jsonObject; + final YangResource yangResource = new YangResource(); + yangResource.setModuleName(moduleReference.getName()); + yangResource.setRevision(moduleReference.getRevision()); + yangResource.setYangSource(extractYangSourceFromBody(response)); + return yangResource; } private String extractYangSourceFromBody(final ResponseEntity<String> responseEntity) { |