if (!noReceiveOnStart) {
c.getAccountNumbers().stream().map(c::getManager).filter(Objects::nonNull).forEach(this::subscribeReceive);
+ c.addOnManagerAddedHandler(this::subscribeReceive);
+ c.addOnManagerRemovedHandler(this::unsubscribeReceive);
}
handleConnection();
subscribeReceive(m);
}
+ final var currentThread = Thread.currentThread();
+ m.addClosedListener(currentThread::interrupt);
+
handleConnection();
}
final ObjectMapper objectMapper, final String method, ContainerNode<?> params
) throws JsonRpcException {
var command = getCommand(method);
- // TODO implement link
if (c != null) {
if (command instanceof JsonRpcMultiCommand<?> jsonRpcCommand) {
return runCommand(objectMapper, params, new MultiCommandRunnerImpl<>(c, jsonRpcCommand));