diff options
Diffstat (limited to 'prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java')
-rw-r--r-- | prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java index a0aa17e3..aafcd81a 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/controllers/ScheduleController.java @@ -3,6 +3,7 @@ * PNF-REGISTRATION-HANDLER * ================================================================================ * Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved. + * Copyright (C) 2023 Deutsche Telekom Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +27,7 @@ import org.onap.dcaegen2.services.prh.tasks.ScheduledTasksRunner; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Profile; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; @@ -34,17 +36,19 @@ import org.springframework.web.bind.annotation.RestController; import reactor.core.publisher.Mono; /** - * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 4/5/18 + * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on + * 4/5/18 */ @RestController -@Api(value = "ScheduleController", description = "Schedule Controller") +@Api(value = "ScheduleController") +@Profile("!autoCommitDisabled") public class ScheduleController { private static final Logger LOGGER = LoggerFactory.getLogger(ScheduleController.class); + private ScheduledTasksRunner scheduledTasksRunner; - private final ScheduledTasksRunner scheduledTasksRunner; - @Autowired + @Autowired(required = false) public ScheduleController(ScheduledTasksRunner scheduledTasksRunner) { this.scheduledTasksRunner = scheduledTasksRunner; } @@ -52,7 +56,7 @@ public class ScheduleController { @RequestMapping(value = "start", method = RequestMethod.GET) @ApiOperation(value = "Start scheduling worker request") public Mono<ResponseEntity<String>> startTasks() { - LOGGER.trace("Receiving start scheduling worker request"); + LOGGER.trace("Receiving start scheduling worker request with Comit SchedulerController"); return Mono.fromSupplier(scheduledTasksRunner::tryToStartTask).map(this::createStartTaskResponse); } @@ -61,10 +65,10 @@ public class ScheduleController { public Mono<ResponseEntity<String>> stopTask() { LOGGER.trace("Receiving stop scheduling worker request"); return Mono.defer(() -> { - scheduledTasksRunner.cancelTasks(); - return Mono.just(new ResponseEntity<>("PRH Service has been stopped!", HttpStatus.OK)); - } - ); + scheduledTasksRunner.closeKafkaPublisherSubscriber(); + scheduledTasksRunner.cancelTasks(); + return Mono.just(new ResponseEntity<>("PRH Service has been stopped!", HttpStatus.OK)); + }); } private ResponseEntity<String> createStartTaskResponse(boolean wasScheduled) { |