.
This commit is contained in:
parent
5a255aeac0
commit
e8a2a45178
7 changed files with 110 additions and 1 deletions
|
|
@ -10,6 +10,8 @@ import org.jetbrains.annotations.NotNull;
|
|||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.print.Doc;
|
||||
|
||||
public class CrownServerManager implements ServerManager {
|
||||
|
||||
private final NatsRepository natsRepo;
|
||||
|
|
@ -60,6 +62,14 @@ public class CrownServerManager implements ServerManager {
|
|||
.map(doc -> doc.getString("state"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Mono<@NotNull Integer> getPort(String handle) {
|
||||
var payload = DocumentRepository.toBytes(new Document("handle", handle));
|
||||
return natsRepo.request("crown.get-port", payload)
|
||||
.map(DocumentRepository::fromMessage)
|
||||
.map(doc -> doc.getInteger("port"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Mono<@NotNull Void> setState(String handle, String state) {
|
||||
Preconditions.checkArgument(!state.contains(" "), "state may not contain spaces");
|
||||
|
|
|
|||
|
|
@ -23,5 +23,7 @@ public interface ServerManager {
|
|||
|
||||
Mono<@NotNull String> getState(String handle);
|
||||
|
||||
Mono<@NotNull Integer> getPort(String handle);
|
||||
|
||||
Mono<@NotNull Void> setState(String handle, String state);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue