}
private ListenableFuture<FcpConnection> execute() {
- return threadPool.submit(() -> establishConnection());
+ return threadPool.submit(this::establishConnection);
}
private FcpConnection establishConnection() throws IOException {
FcpConnection connection = new FcpConnection(hostname, port);
connection.connect();
- ClientHelloReplySequence nodeHelloSequence = new ClientHelloReplySequence(connection);
ClientHello clientHello = new ClientHello(clientName.get(), "2.0");
- try {
+ try (ClientHelloReplySequence nodeHelloSequence = new ClientHelloReplySequence(connection)) {
if (nodeHelloSequence.send(clientHello).get()) {
return connection;
}
private class ClientHelloReplySequence extends FcpReplySequence<Boolean> {
private final AtomicReference<NodeHello> receivedNodeHello = new AtomicReference<>();
- private final AtomicBoolean receivedClosed = new AtomicBoolean();
public ClientHelloReplySequence(FcpConnection connection) {
super(ClientHelloImpl.this.threadPool, connection);
@Override
protected boolean isFinished() {
- return receivedNodeHello.get() != null || receivedClosed.get();
+ return receivedNodeHello.get() != null;
}
@Override
receivedNodeHello.set(nodeHello);
}
- @Override
- protected void consumeCloseConnectionDuplicateClientName(
- CloseConnectionDuplicateClientName closeConnectionDuplicateClientName) {
- receivedClosed.set(true);
- }
-
}
}