2021-08-07 15:39:29 +07:00
|
|
|
package com.cubetiqs.graphql.demo.resolver.query
|
2021-08-07 10:27:34 +07:00
|
|
|
|
|
|
|
import com.cubetiqs.graphql.demo.context.GQuery
|
2021-08-08 12:33:34 +07:00
|
|
|
import com.cubetiqs.graphql.demo.dgmodel.DgsConstants
|
2021-08-07 19:56:39 +07:00
|
|
|
import com.netflix.graphql.dgs.DgsQuery
|
2021-08-08 12:33:34 +07:00
|
|
|
import org.springframework.security.access.prepost.PreAuthorize
|
2021-08-07 10:27:34 +07:00
|
|
|
import reactor.core.publisher.Mono
|
|
|
|
import java.util.concurrent.CompletableFuture
|
|
|
|
|
|
|
|
@GQuery
|
2021-08-07 19:56:39 +07:00
|
|
|
class HelloQueryResolver {
|
|
|
|
@DgsQuery(field = "hello")
|
2021-08-07 10:27:34 +07:00
|
|
|
fun hello(): CompletableFuture<String> {
|
|
|
|
return Mono.just("Hello Query...!").toFuture()
|
|
|
|
}
|
2021-08-07 19:56:39 +07:00
|
|
|
|
2021-08-08 12:33:34 +07:00
|
|
|
@PreAuthorize("hasAnyRole('ADMIN')")
|
|
|
|
@DgsQuery(field = DgsConstants.QUERY.HelloByName)
|
2021-08-07 19:56:39 +07:00
|
|
|
fun helloByName(name: String): CompletableFuture<String> {
|
|
|
|
return Mono.just("Hello $name...!").toFuture()
|
|
|
|
}
|
2021-08-07 10:27:34 +07:00
|
|
|
}
|