X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=dashboard%2Fwebapp-backend%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fric%2Fportal%2Fdashboard%2Fcontroller%2FPolicyController.java;h=529cd2afbe36fa3994ed99457e4236ec49ca874e;hb=7a4a590fb0ebf8772169625cdda327da43c79c6d;hp=410ad1df85afe2bc3d3ef525e10f0e0372e35ef7;hpb=de026fb34e3dc3200acdb022782fe68615176ead;p=nonrtric.git diff --git a/dashboard/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/PolicyController.java b/dashboard/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/PolicyController.java index 410ad1df..529cd2af 100644 --- a/dashboard/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/PolicyController.java +++ b/dashboard/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/PolicyController.java @@ -41,6 +41,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; import org.springframework.security.access.annotation.Secured; import org.springframework.util.Assert; import org.springframework.web.bind.annotation.DeleteMapping; @@ -96,7 +97,7 @@ public class PolicyController { @ApiOperation(value = "Gets the policy types from Near Realtime-RIC") @GetMapping(POLICY_TYPES_METHOD) @Secured({ DashboardConstants.ROLE_ADMIN, DashboardConstants.ROLE_STANDARD }) - public PolicyTypes getAllPolicyTypes(HttpServletResponse response) { + public ResponseEntity getAllPolicyTypes(HttpServletResponse response) { logger.debug("getAllPolicyTypes"); return this.policyAgentApi.getAllPolicyTypes(); } @@ -104,19 +105,22 @@ public class PolicyController { @ApiOperation(value = "Returns the policy instances for the given policy type.") @GetMapping(POLICY_TYPES_METHOD + "/{" + POLICY_TYPE_ID_NAME + "}/" + POLICIES_NAME) @Secured({ DashboardConstants.ROLE_ADMIN, DashboardConstants.ROLE_STANDARD }) - public String getPolicyInstances(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString) { + public ResponseEntity getPolicyInstances(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString) { logger.debug("getPolicyInstances {}", policyTypeIdString); - PolicyInstances i = this.policyAgentApi.getPolicyInstancesForType(policyTypeIdString); - String json = gson.toJson(i); - return json; + ResponseEntity response = this.policyAgentApi.getPolicyInstancesForType(policyTypeIdString); + if (!response.getStatusCode().is2xxSuccessful()) { + return new ResponseEntity<>(response.getStatusCode()); + } + String json = gson.toJson(response.getBody()); + return new ResponseEntity<>(json, response.getStatusCode()); } @ApiOperation(value = "Returns a policy instance of a type") @GetMapping(POLICY_TYPES_METHOD + "/{" + POLICY_TYPE_ID_NAME + "}/" + POLICIES_NAME + "/{" + POLICY_INSTANCE_ID_NAME + "}") @Secured({ DashboardConstants.ROLE_ADMIN, DashboardConstants.ROLE_STANDARD }) - public String getPolicyInstance(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString, + public ResponseEntity getPolicyInstance(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString, @PathVariable(POLICY_INSTANCE_ID_NAME) String policyInstanceId) { logger.debug("getPolicyInstance {}:{}", policyTypeIdString, policyInstanceId); return this.policyAgentApi.getPolicyInstance(policyInstanceId); @@ -126,12 +130,12 @@ public class PolicyController { @PutMapping(POLICY_TYPES_METHOD + "/{" + POLICY_TYPE_ID_NAME + "}/" + POLICIES_NAME + "/{" + POLICY_INSTANCE_ID_NAME + "}") @Secured({ DashboardConstants.ROLE_ADMIN }) - public void putPolicyInstance(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString, + public ResponseEntity putPolicyInstance(@PathVariable(POLICY_TYPE_ID_NAME) String policyTypeIdString, @RequestParam(name = "ric", required = true) String ric, @PathVariable(POLICY_INSTANCE_ID_NAME) String policyInstanceId, @RequestBody String instance) { logger.debug("putPolicyInstance typeId: {}, instanceId: {}, instance: {}", policyTypeIdString, policyInstanceId, instance); - this.policyAgentApi.putPolicy(policyTypeIdString, policyInstanceId, instance, ric); + return this.policyAgentApi.putPolicy(policyTypeIdString, policyInstanceId, instance, ric); } @ApiOperation(value = "Deletes the policy instances for the given policy type.") @@ -164,13 +168,16 @@ public class PolicyController { @ApiOperation(value = "Returns the rics supporting the given policy type.") @GetMapping("/rics") @Secured({ DashboardConstants.ROLE_ADMIN, DashboardConstants.ROLE_STANDARD }) - public String getRicsSupportingType( + public ResponseEntity getRicsSupportingType( @RequestParam(name = "policyType", required = true) String supportingPolicyType) { logger.debug("getRicsSupportingType {}", supportingPolicyType); - Collection result = this.policyAgentApi.getRicsSupportingType(supportingPolicyType); - String json = gson.toJson(result); - return json; + ResponseEntity> result = this.policyAgentApi.getRicsSupportingType(supportingPolicyType); + if (!result.getStatusCode().is2xxSuccessful()) { + return new ResponseEntity<>(result.getStatusCode()); + } + String json = gson.toJson(result.getBody()); + return new ResponseEntity<>(json, result.getStatusCode()); } };