diff options
Diffstat (limited to 'src/main/java/org/onap/a1pesimulator/controller/RanCellController.java')
-rw-r--r-- | src/main/java/org/onap/a1pesimulator/controller/RanCellController.java | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/src/main/java/org/onap/a1pesimulator/controller/RanCellController.java b/src/main/java/org/onap/a1pesimulator/controller/RanCellController.java index d454116..ae20f1c 100644 --- a/src/main/java/org/onap/a1pesimulator/controller/RanCellController.java +++ b/src/main/java/org/onap/a1pesimulator/controller/RanCellController.java @@ -14,10 +14,12 @@ package org.onap.a1pesimulator.controller; import java.util.Optional; + +import org.onap.a1pesimulator.data.ReportingMethodEnum; import org.onap.a1pesimulator.data.cell.CellDetails; import org.onap.a1pesimulator.data.cell.RanCell; -import org.onap.a1pesimulator.data.ves.Event; -import org.onap.a1pesimulator.data.ves.RanPeriodicVesEvent; +import org.onap.a1pesimulator.data.fileready.RanPeriodicEvent; +import org.onap.a1pesimulator.data.ves.VesEvent; import org.onap.a1pesimulator.service.cell.RanCellService; import org.onap.a1pesimulator.service.cell.RanCellStateService; import org.onap.a1pesimulator.service.ves.RanVesBrokerService; @@ -32,6 +34,9 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; + @RestController @RequestMapping({"${restapi.version}/ran/cells"}) public class RanCellController { @@ -62,22 +67,25 @@ public class RanCellController { return ResponseEntity.ok(ranCellService.getCellById(identifier)); } + @ApiOperation("Start sending failure VES events for specific cell") @PostMapping(value = "/{identifier}/startFailure") - public ResponseEntity<String> startSendingFailureVesEvents(final @PathVariable String identifier) { + public ResponseEntity<String> startSendingFailureVesEvents(@ApiParam(value = "Cell Id") final @PathVariable String identifier, + @ApiParam(value = "Reporting Method", defaultValue = "FILE_READY", required = true) final @RequestParam() ReportingMethodEnum reportingMethod) { ranCellService.failure(identifier); - ranVesBrokerService.startSendingFailureVesEvents(identifier); + ranVesBrokerService.startSendingFailureVesEvents(identifier, reportingMethod); ranCellStateService.failingState(identifier); return ResponseEntity.accepted().body("Failure VES Event sending started"); } + @ApiOperation("Stop sending failure VES events for specific cell") @PostMapping(value = "/{identifier}/stopFailure") - public ResponseEntity<Void> stopSendingFailureVesEvents(final @PathVariable String identifier) { + public ResponseEntity<Void> stopSendingFailureVesEvents(@ApiParam(value = "Cell Id") final @PathVariable String identifier) { ranCellService.recoverFromFailure(identifier); - Optional<RanPeriodicVesEvent> vesEvent = ranVesBrokerService.stopSendingVesEvents(identifier); + Optional<RanPeriodicEvent> vesEvent = ranVesBrokerService.stopSendingVesEvents(identifier); if (!vesEvent.isPresent()) { return ResponseEntity.notFound().build(); @@ -87,15 +95,18 @@ public class RanCellController { return ResponseEntity.accepted().build(); } + @ApiOperation("Start sending normal VES events for specific cell and in specific granularity period") @PostMapping(value = "/{identifier}/start") - public ResponseEntity<String> startSendingVesEvents(final @RequestBody Optional<Event> vesEventOpt, - final @PathVariable String identifier, final @RequestParam(required = false) Integer interval) { + public ResponseEntity<String> startSendingVesEvents(@ApiParam(value = "Standard Measurement Event JSON") final @RequestBody Optional<VesEvent> vesEventOpt, + @ApiParam(value = "Cell Id") final @PathVariable String identifier, + @ApiParam(value = "Granularity period in seconds", example = "60") final @RequestParam(required = false) Integer interval, + @ApiParam(value = "Reporting Method", defaultValue = "FILE_READY", required = true) final @RequestParam() ReportingMethodEnum reportingMethod) { log.info("Start sending ves events every {} seconds for {} ", getInterval(interval), identifier); - Event vesEvent = vesEventOpt.orElse(ranVesBrokerService.getGlobalPmVesStructure()); + VesEvent vesEvent = vesEventOpt.orElse(ranVesBrokerService.getGlobalPmVesStructure()); ResponseEntity<String> responseEntity = - ranVesBrokerService.startSendingVesEvents(identifier, vesEvent, getInterval(interval)); + ranVesBrokerService.startSendingVesEvents(identifier, vesEvent, getInterval(interval), reportingMethod); if (!responseEntity.getStatusCode().is2xxSuccessful()) { return responseEntity; } @@ -104,10 +115,11 @@ public class RanCellController { return responseEntity; } + @ApiOperation("Stop sending normal VES events for specific cell") @PostMapping(value = "/{identifier}/stop") - public ResponseEntity<Void> stopSendingVesEvents(final @PathVariable String identifier) { + public ResponseEntity<Void> stopSendingVesEvents(@ApiParam(value = "Cell Id") final @PathVariable String identifier) { log.info("Stop sending custom ves events for {}", identifier); - Optional<RanPeriodicVesEvent> vesEvent = ranVesBrokerService.stopSendingVesEvents(identifier); + Optional<RanPeriodicEvent> vesEvent = ranVesBrokerService.stopSendingVesEvents(identifier); if (!vesEvent.isPresent()) { return ResponseEntity.notFound().build(); } @@ -117,7 +129,7 @@ public class RanCellController { } @GetMapping(value = "/{identifier}/eventStructure") - public ResponseEntity<Event> getVesEventStructure(final @PathVariable String identifier) { + public ResponseEntity<VesEvent> getVesEventStructure(final @PathVariable String identifier) { if (!ranVesBrokerService.getEnabledEventElementIdentifiers().contains(identifier)) { return ResponseEntity.notFound().build(); } |