Микронавт RxWebSocketClient, как динамически подключаться к клиенту? - PullRequest
0 голосов
/ 21 июня 2019

@ Client ("http://localhost:8082") У меня есть следующее объявление для этого бита кода по предоставленной ссылке:

/**
 * TODO this is currently hard wired to something that is dynamic in command object host/port
 */
@Inject
@Client("http://localhost:8082")
RxWebSocketClient webSocketClient;

Существует сегмент кода многодалее:

 ChatClientWebSocket chatClient = webSocketClient.connect(ChatClientWebSocket.class, "/ws/process").blockingFirst();
                    chatClient.send(serializeMessage(msg));

В идеале я хотел бы определить, к какому клиенту на основе существующих данных в объекте команды :

 private String host;
    private int port;

В указанном выше классе хостпорт генерируется самим этим микросервисом, который в целях тестирования физически связан, но при условии, что он динамически подключается к различным портам 127.0.0.1:8083 и 127.0.0.1:8084 и т. д. Как порт динамического хоста может объявлять то, что объявлено в верхней части, т.е.

@Client("http://localhost:8082")

В идеале то, что мне нужно, - это что-то вроде этого. Так что клиентское соединение является динамическим, основанным на текущем определении порта хоста объекта, а не жестко заданным в верхней части страницы, которая находится за пределамигде происходит динамика ..

                @Client(cmd.getHost()+":"+cmd.getPort())
                RxWebSocketClient webSocketClient;
                ChatClientWebSocket chatClient = webSocketClient.connect(ChatClientWebSocket.class, "/ws/process").blockingFirst();
                chatClient.send(serializeMessage(msg));

1 Ответ

0 голосов
/ 03 июля 2019

Вы можете попробовать использовать свойство:

@Client("${myapp.api.twitter.url}")
RxWebSocketClient webSocketClient;
...