diff --git a/src/main/kotlin/com/cubetiqs/demo/axon/api/AccountQueryController.kt b/src/main/kotlin/com/cubetiqs/demo/axon/api/AccountQueryController.kt index 04f8e2d..64ba2e5 100644 --- a/src/main/kotlin/com/cubetiqs/demo/axon/api/AccountQueryController.kt +++ b/src/main/kotlin/com/cubetiqs/demo/axon/api/AccountQueryController.kt @@ -1,18 +1,28 @@ package com.cubetiqs.demo.axon.api import com.cubetiqs.demo.axon.entity.BankAccount +import com.cubetiqs.demo.axon.service.AccountQueryService +import io.swagger.annotations.Api +import org.springframework.beans.factory.annotation.Autowired import org.springframework.web.bind.annotation.GetMapping import org.springframework.web.bind.annotation.PathVariable +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController import java.util.concurrent.CompletableFuture -class AccountQueryController { +@RestController +@RequestMapping(path = ["/accounts"]) +@Api(value = "Bank Account Queries", description = "Bank Account Query Events API") +class AccountQueryController @Autowired constructor( + private val accountQueryService: AccountQueryService +) { @GetMapping("/{accountId}") - fun findById(@PathVariable("accountId") accountId: String?): CompletableFuture? { + fun findById(@PathVariable("accountId") accountId: String?): CompletableFuture { return this.accountQueryService.findById(accountId) } @GetMapping("/{accountId}/events") - fun listEventsForAccount(@PathVariable(value = "accountId") accountId: String?): List? { + fun listEventsForAccount(@PathVariable(value = "accountId") accountId: String?): List { return this.accountQueryService.listEventsForAccount(accountId) } } \ No newline at end of file