+ String policiesJson;
+ try {
+ policiesJson = policiesToJson(result);
+ } catch (ServiceException e) {
+ return new ResponseEntity<>(e.getMessage(), HttpStatus.NO_CONTENT);
+ }
+ return new ResponseEntity<>(policiesJson, HttpStatus.OK);
+ }
+ }
+
+ @GetMapping("/policy_status")
+ @ApiOperation(value = "Returns a policy status") //
+ @ApiResponses(
+ value = { //
+ @ApiResponse(code = 200, message = "Policy status", response = Object.class), //
+ @ApiResponse(code = 204, message = "Policy is not found", response = String.class)} //
+ )
+ public Mono<ResponseEntity<String>> getPolicyStatus( //
+ @RequestParam(name = "instance", required = true) String instance) {
+ try {
+ Policy policy = policies.getPolicy(instance);
+
+ return a1ClientFactory.createA1Client(policy.ric()) //
+ .flatMap(client -> client.getPolicyStatus(policy)) //
+ .flatMap(status -> Mono.just(new ResponseEntity<>(status, HttpStatus.OK)));
+ } catch (ServiceException e) {
+ return Mono.just(new ResponseEntity<>(e.getMessage(), HttpStatus.NO_CONTENT));