X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Ffcp%2Fquelaton%2FAddPeerCommandImpl.java;fp=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Ffcp%2Fquelaton%2FAddPeerCommandImpl.java;h=9dca0dc4a40117ca53e56cc3556c6bc4661444b5;hb=c7b30c245806a4a67d2e924d6d4e2a9e97916c5b;hp=b34d2ba2c99808aa80bf67c7abdd77f595642a66;hpb=7a3be5ca037785f4f1acb225381578db12d15eb1;p=jFCPlib.git diff --git a/src/main/java/net/pterodactylus/fcp/quelaton/AddPeerCommandImpl.java b/src/main/java/net/pterodactylus/fcp/quelaton/AddPeerCommandImpl.java index b34d2ba..9dca0dc 100644 --- a/src/main/java/net/pterodactylus/fcp/quelaton/AddPeerCommandImpl.java +++ b/src/main/java/net/pterodactylus/fcp/quelaton/AddPeerCommandImpl.java @@ -6,7 +6,6 @@ import java.net.URL; import java.util.Optional; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference; import java.util.function.Supplier; @@ -77,32 +76,18 @@ public class AddPeerCommandImpl implements AddPeerCommand { private class AddPeerDialog extends FcpDialog> { - private final AtomicBoolean finished = new AtomicBoolean(); - private final AtomicReference peer = new AtomicReference<>(); - public AddPeerDialog() throws IOException { - super(threadPool, connectionSupplier.get()); - } - - @Override - protected boolean isFinished() { - return finished.get(); - } - - @Override - protected Optional getResult() { - return Optional.ofNullable(peer.get()); + super(threadPool, connectionSupplier.get(), Optional.empty()); } @Override protected void consumePeer(Peer peer) { - this.peer.set(peer); - finished.set(true); + setResult(Optional.ofNullable(peer)); } @Override protected void consumeProtocolError(ProtocolError protocolError) { - finished.set(true); + finish(); } }