diff options
author | Stanislav Marszalek <s.marszalek2@partner.samsung.com> | 2021-07-09 09:41:08 +0200 |
---|---|---|
committer | Stanislav Marszalek <s.marszalek2@partner.samsung.com> | 2021-07-28 13:47:46 +0200 |
commit | 0b06291c6c0c6f8f1e8240c8c6b1175648a177aa (patch) | |
tree | 6a0a50a7836727dbe96259282550679876186219 /src/main/java/org/onap/a1pesimulator/controller/RanCellController.java | |
parent | de818385611ad0afb133996a4afe5b1b00ab1c57 (diff) |
O1 PM Bulk support - collecting events, basic structure for PM Bulk File creation
Issue-ID: INT-1945
Signed-off-by: Stanislav Marszalek <s.marszalek2@partner.samsung.com>
Change-Id: If08908035719798d8d7b129ddcdb6ef62f1787fe
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(); } |