aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/a1pesimulator/controller/RanCellController.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/onap/a1pesimulator/controller/RanCellController.java')
-rw-r--r--src/main/java/org/onap/a1pesimulator/controller/RanCellController.java38
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();
}