X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-backend%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fportal%2Fnonrtric%2Fcontrolpanel%2Fcontroller%2FEnrichmentController.java;h=c874dc13c6d940756ca4f98ab600012b584311c2;hb=b36108a6b4f18c5620ed120184bdd8c86c85c70e;hp=0845fcd2570f667a2895586c59dbc9f2bf296232;hpb=f11a883a0b7d0dff421e5a79bc9f2378b76d3318;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-backend/src/main/java/org/oransc/portal/nonrtric/controlpanel/controller/EnrichmentController.java b/webapp-backend/src/main/java/org/oransc/portal/nonrtric/controlpanel/controller/EnrichmentController.java index 0845fcd..c874dc1 100644 --- a/webapp-backend/src/main/java/org/oransc/portal/nonrtric/controlpanel/controller/EnrichmentController.java +++ b/webapp-backend/src/main/java/org/oransc/portal/nonrtric/controlpanel/controller/EnrichmentController.java @@ -19,7 +19,6 @@ */ package org.oransc.portal.nonrtric.controlpanel.controller; -import com.google.gson.GsonBuilder; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonParser; @@ -34,6 +33,9 @@ import org.oransc.portal.nonrtric.controlpanel.ControlPanelConstants; import org.oransc.portal.nonrtric.controlpanel.eiproducerapi.EiProducerApi; import org.oransc.portal.nonrtric.controlpanel.model.JobInfo; import org.oransc.portal.nonrtric.controlpanel.model.ProducerInfo; +import org.oransc.portal.nonrtric.controlpanel.model.ProducerRegistrationInfo; +import org.oransc.portal.nonrtric.controlpanel.model.ProducerRegistrationInfo.ProducerEiTypeRegistrationInfo; +import org.oransc.portal.nonrtric.controlpanel.model.ProducerStatusInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -42,7 +44,6 @@ import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.util.Assert; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -60,8 +61,6 @@ public class EnrichmentController { private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); - private static com.google.gson.Gson gson = new GsonBuilder().create(); - // Publish paths in constants so tests are easy to write public static final String CONTROLLER_PATH = ControlPanelConstants.ENDPOINT_PREFIX + "/enrichment"; // Endpoints @@ -82,37 +81,6 @@ public class EnrichmentController { logger.debug("enrichment: configured with client type {}", eiProducerApi.getClass().getName()); } - /* - * The fields are defined in the Enrichment Control Typescript interface. - */ - @ApiOperation(value = "Get the EI type identifiers") - @GetMapping(EI_TYPES) - public ResponseEntity getAllEiTypeIds() { - logger.debug("getAllEiTypeIds"); - return this.eiProducerApi.getAllEiTypeIds(); - } - - @ApiOperation(value = "Get an individual EI type") - @GetMapping(EI_TYPES + "/{" + EI_TYPE_ID + "}") - public ResponseEntity getEiType(@PathVariable(EI_TYPE_ID) String eiTypeId) { - logger.debug("getEiType {}", eiTypeId); - return this.eiProducerApi.getEiType(eiTypeId); - } - - @ApiOperation(value = "Get an individual EI producer") - @GetMapping(EI_PRODUCERS + "/{" + EI_PRODUCER_ID + "}") - public ResponseEntity getEiProducer(@PathVariable(EI_PRODUCER_ID) String eiProducerId) { - logger.debug("getEiProducer {}", eiProducerId); - return this.eiProducerApi.getEiProducer(eiProducerId); - } - - @ApiOperation(value = "Get the EI job definitions for one EI producer") - @GetMapping(EI_PRODUCERS + "/{" + EI_PRODUCER_ID + "}/" + EI_JOBS) - public ResponseEntity getEiJobsForOneEiProducer(@PathVariable(EI_PRODUCER_ID) String eiProducerId) { - logger.debug("getEiJobsForOneEiProducer {}", eiProducerId); - return this.eiProducerApi.getEiJobsForOneEiProducer(eiProducerId); - } - @ApiOperation(value = "Get the EI job definitions for one EI producer") @GetMapping(EI_JOBS) public ResponseEntity> getEiJobs() { @@ -127,14 +95,9 @@ public class EnrichmentController { } private List getJobs(JsonElement producerId) { - List jobs = new ArrayList<>(); - ResponseEntity jobsResponse = this.eiProducerApi.getEiJobsForOneEiProducer(producerId.getAsString()); - JsonArray jobsJson = JsonParser.parseString(jobsResponse.getBody()).getAsJsonArray(); - for (JsonElement jobJson : jobsJson) { - JobInfo jobInfo = gson.fromJson(jobJson, JobInfo.class); - jobs.add(jobInfo); - } - return jobs; + ResponseEntity> jobsResponse = + this.eiProducerApi.getEiJobsForOneEiProducer(producerId.getAsString()); + return jobsResponse.getBody(); } @ApiOperation(value = "Get EI producers") @@ -157,26 +120,18 @@ public class EnrichmentController { } private String[] getSupportedTypes(JsonElement producerId) { - ResponseEntity producerResponse = this.eiProducerApi.getEiProducer(producerId.getAsString()); - JsonArray supportedTypesJson = JsonParser.parseString(producerResponse.getBody()).getAsJsonObject() - .get("supported_ei_types").getAsJsonArray(); + ResponseEntity producerResponse = + this.eiProducerApi.getEiProducer(producerId.getAsString()); List supportedTypes = new ArrayList<>(); - for (JsonElement typeJson : supportedTypesJson) { - supportedTypes.add(typeJson.getAsJsonObject().get("ei_type_identity").getAsString()); + for (ProducerEiTypeRegistrationInfo type : producerResponse.getBody().types) { + supportedTypes.add(type.eiTypeId); } return supportedTypes.toArray(new String[0]); } private String getProducerStatus(JsonElement producerId) { - ResponseEntity statusResponse = this.eiProducerApi.getEiProducerStatus(producerId.getAsString()); - return JsonParser.parseString(statusResponse.getBody()).getAsJsonObject().get("operational_state") - .getAsString(); - } - - @ApiOperation(value = "Get the status of an EI producer") - @GetMapping(EI_PRODUCERS + "/{" + EI_PRODUCER_ID + "}/" + STATUS) - public ResponseEntity getEiProducerStatus(@PathVariable(EI_PRODUCER_ID) String eiProducerId) { - logger.debug("getEiProducerStatus {}", eiProducerId); - return this.eiProducerApi.getEiProducerStatus(eiProducerId); + ResponseEntity statusResponse = + this.eiProducerApi.getEiProducerStatus(producerId.getAsString()); + return statusResponse.getBody().opState.toString(); } }