Skip to content

Commit 38973dd

Browse files
authored
Merge pull request #98 from scalecube/defer_token_call_to_thread
Deferred token retrieval to scheduler
2 parents f0b0ddb + 529bbfa commit 38973dd

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

vault/src/main/java/io/scalecube/security/vault/VaultClientTokenSupplier.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.slf4j.Logger;
1313
import org.slf4j.LoggerFactory;
1414
import reactor.core.publisher.Mono;
15+
import reactor.core.scheduler.Schedulers;
1516

1617
public final class VaultClientTokenSupplier {
1718

@@ -87,6 +88,7 @@ public VaultClientTokenSupplier vaultRole(String vaultRole) {
8788
public Mono<String> getToken() {
8889
return Mono.fromRunnable(this::validate)
8990
.then(Mono.fromCallable(this::getToken0))
91+
.subscribeOn(Schedulers.boundedElastic())
9092
.doOnSuccess(s -> LOGGER.debug("[getToken][success] result: {}", mask(s)))
9193
.doOnError(th -> LOGGER.error("[getToken][error] cause: {}", th.toString()));
9294
}

vault/src/main/java/io/scalecube/security/vault/VaultServiceTokenSupplier.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import org.slf4j.LoggerFactory;
1515
import reactor.core.Exceptions;
1616
import reactor.core.publisher.Mono;
17+
import reactor.core.scheduler.Schedulers;
1718

1819
public final class VaultServiceTokenSupplier {
1920

@@ -107,6 +108,7 @@ public VaultServiceTokenSupplier serviceTokenNameBuilder(
107108
public Mono<String> getToken(Map<String, String> tags) {
108109
return Mono.fromRunnable(this::validate)
109110
.then(Mono.defer(() -> vaultTokenSupplier))
111+
.subscribeOn(Schedulers.boundedElastic())
110112
.flatMap(
111113
vaultToken -> {
112114
final String uri = buildServiceTokenUri(tags);

0 commit comments

Comments
 (0)