Skip to content

Commit 7c17a1a

Browse files
committed
KotlinCoroutineApiApplication
1 parent d1f15ef commit 7c17a1a

File tree

5 files changed

+43
-0
lines changed

5 files changed

+43
-0
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
dependencies {
2+
implementation(project(":domain"))
3+
implementation(project(":core"))
4+
implementation("org.springframework.boot:spring-boot-starter-webflux")
5+
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
6+
implementation(kotlin("stdlib-jdk8"))
7+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package info.log.kotlincoroutineapi
2+
3+
import org.springframework.boot.autoconfigure.SpringBootApplication
4+
import org.springframework.boot.runApplication
5+
6+
7+
@SpringBootApplication(scanBasePackages = ["info.log.kotlincoroutineapi", "info.log.core"])
8+
class KotlinCoroutineApiApplication {
9+
}
10+
11+
fun main(args: Array<String>) {
12+
runApplication<KotlinCoroutineApiApplication>(*args)
13+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package info.log.kotlincoroutineapi.web
2+
3+
import info.log.domain.Person
4+
import kotlinx.coroutines.flow.Flow
5+
import kotlinx.coroutines.reactive.asFlow
6+
import org.slf4j.Logger
7+
import org.slf4j.LoggerFactory
8+
import org.springframework.web.bind.annotation.GetMapping
9+
import org.springframework.web.bind.annotation.RestController
10+
11+
12+
@RestController
13+
class HelloController {
14+
val log: Logger = LoggerFactory.getLogger(this.javaClass)
15+
16+
@GetMapping("/hello")
17+
suspend fun hello(): Flow<Person> {
18+
return Person.createPeopleFluxRandomly().asFlow()
19+
}
20+
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
server:
2+
port: 10000

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@ rootProject.name = "java-concurrency-practice"
33
include("platform-thread-api")
44
include("virtual-thread-api")
55
include("reactor-netty-api")
6+
include("kotlin-coroutine-api")
67
include("domain")
78
include("core")

0 commit comments

Comments
 (0)