From: Lott, Christopher (cl778h) Date: Wed, 21 Aug 2019 19:10:08 +0000 (-0400) Subject: Pass AC policy content to A1 without parsing X-Git-Tag: R2~32^2 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=86035ef1f9d5b699146ad5dcd127ed30f0898077;p=portal%2Fric-dashboard.git Pass AC policy content to A1 without parsing Change-Id: I8213c4c387337c94a8c703f297bc003b4a01ebfc Signed-off-by: Lott, Christopher (cl778h) --- diff --git a/docs/release-notes.rst b/docs/release-notes.rst index 1eb16cb8..7ae186c0 100644 --- a/docs/release-notes.rst +++ b/docs/release-notes.rst @@ -23,7 +23,7 @@ Version 1.2.1, ? Aug 2019 ------------------------- * Add EPSDK-FW user management and Portal security -Version 1.2.0, 20 Aug 2019 +Version 1.2.0, 21 Aug 2019 -------------------------- * Split URL properties into prefix/suffix parts * Add jacoco plugin to back-end for code coverage @@ -44,6 +44,7 @@ Version 1.2.0, 20 Aug 2019 * Disable x-frame-options response header * Repair app manager undeploy-app method * Display AC xAPP metrics data via Kibana source (metrics.url.ac) on dashboard +* Pass AC policy parameter without parsing as JSON Version 1.0.5, 5 July 2019 -------------------------- diff --git a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AcXappController.java b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AcXappController.java index 7b97ca0e..1054cc82 100644 --- a/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AcXappController.java +++ b/webapp-backend/src/main/java/org/oransc/ric/portal/dashboard/controller/AcXappController.java @@ -39,8 +39,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import com.fasterxml.jackson.databind.JsonNode; - import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -100,12 +98,14 @@ public class AcXappController { /* * This controller is deliberately kept ignorant of the data expected by AC. The - * fields are defined in the ACAdmissionIntervalControl Typescript interface. + * fields are defined in the ACAdmissionIntervalControl Typescript interface. AC + * uses snake_case keys but Jackson automatically converts to CamelCase on + * parse. To avoid this conversion, specify the request parameter as String. */ @ApiOperation(value = "Sets the admission control policy for AC xApp via the A1 Mediator") @PutMapping(POLICY_METHOD) @Secured({ DashboardConstants.ROLE_ADMIN }) - public void putAdmissionControlPolicy(@ApiParam(value = "Admission control policy") @RequestBody JsonNode acPolicy, // + public void putAdmissionControlPolicy(@ApiParam(value = "Admission control policy") @RequestBody String acPolicy, // HttpServletResponse response) { logger.debug("putAdmissionControlPolicy {}", acPolicy); a1MediatorApi.a1ControllerPutHandler(AC_CONTROL_NAME, acPolicy);