| package modelbuilder.controllers; |
| |
| import org.springframework.beans.factory.annotation.Autowired; |
| import org.springframework.beans.factory.annotation.Value; |
| import org.springframework.http.ResponseEntity; |
| import org.springframework.web.bind.annotation.CrossOrigin; |
| import org.springframework.web.bind.annotation.GetMapping; |
| import org.springframework.web.bind.annotation.RequestParam; |
| import org.springframework.web.bind.annotation.RestController; |
| import reactor.core.publisher.Mono; |
| |
| @RestController |
| @CrossOrigin(origins="*") |
| public class ModelController { |
| @Value("${eureka.instance.instance-id}") |
| private String instanceId; |
| |
| private StemCoreCleint client; |
| |
| @Autowired |
| public ModelController(StemCoreCleint client) { |
| this.client = client; |
| } |
| @GetMapping(value = "/core/cloud/scenarios", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanScenarios() { |
| |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getScenarios())); |
| } |
| @GetMapping(value = "/core/cloud/graphs", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanGraphs() { |
| |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getGraphs())); |
| } |
| @GetMapping(value = "/core/cloud/models", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanModels() { |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getModels())); |
| } |
| |
| @GetMapping(value = "/core/cloud/predicate", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanPredicate() { |
| |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getPredicate())); |
| } |
| @GetMapping(value = "/core/cloud/sequencer", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanSequencer() { |
| |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getSequencer())); |
| } |
| @GetMapping(value = "/core/cloud/trigger", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanTrigger() { |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getTrigger())); |
| } |
| @GetMapping(value = "/core/cloud/newproject", produces = "application/json") |
| public Mono<ResponseEntity<String>> newproject(@RequestParam("name") String name) { |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.newproject(name))); |
| } |
| |
| @GetMapping(value = "/core/cloud/experiments", produces = "application/json") |
| public Mono<ResponseEntity<String>> scanExperiments() { |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.getExperiments())); |
| } |
| @GetMapping(value = "/core/cloud/stemprojects", produces = "application/json") |
| public Mono<ResponseEntity<String>> stemprojects() { |
| String responseHeaderKey = "Baeldung-Example-Header"; |
| String responseHeaderValue = "Value-ResponseEntityBuilder"; |
| return Mono.just(ResponseEntity.ok() |
| .header(responseHeaderKey, responseHeaderValue) |
| .body(client.stemprojects())); |
| } |
| |
| |
| @GetMapping("/instanceId") |
| public String getHelloWordObject() { |
| return "Instance id: " + instanceId; |
| } |
| } |