projects
/
jFCPlib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add method to modify peer by node identity
[jFCPlib.git]
/
src
/
main
/
java
/
net
/
pterodactylus
/
fcp
/
quelaton
/
ListPeersCommandImpl.java
diff --git
a/src/main/java/net/pterodactylus/fcp/quelaton/ListPeersCommandImpl.java
b/src/main/java/net/pterodactylus/fcp/quelaton/ListPeersCommandImpl.java
index
c084cb5
..
921c0fa
100644
(file)
--- a/
src/main/java/net/pterodactylus/fcp/quelaton/ListPeersCommandImpl.java
+++ b/
src/main/java/net/pterodactylus/fcp/quelaton/ListPeersCommandImpl.java
@@
-3,8
+3,8
@@
package net.pterodactylus.fcp.quelaton;
import java.io.IOException;
import java.util.Collection;
import java.util.HashSet;
import java.io.IOException;
import java.util.Collection;
import java.util.HashSet;
+import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Future;
import java.util.concurrent.atomic.AtomicBoolean;
import net.pterodactylus.fcp.EndListPeers;
import java.util.concurrent.atomic.AtomicBoolean;
import net.pterodactylus.fcp.EndListPeers;
@@
-16,7
+16,7
@@
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.common.util.concurrent.MoreExecutors;
/**
import com.google.common.util.concurrent.MoreExecutors;
/**
- * Default {@link ListPeersCommand} implementation based on {@link Fcp
ReplySequence
}.
+ * Default {@link ListPeersCommand} implementation based on {@link Fcp
Dialog
}.
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
*
* @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
*/
@@
-46,17
+46,23
@@
public class ListPeersCommandImpl implements ListPeersCommand {
@Override
public ListenableFuture<Collection<Peer>> execute() {
@Override
public ListenableFuture<Collection<Peer>> execute() {
+ return threadPool.submit(this::executeSequence);
+ }
+
+ private Collection<Peer> executeSequence() throws InterruptedException, ExecutionException, IOException {
String identifier = new RandomIdentifierGenerator().generate();
ListPeers listPeers = new ListPeers(identifier, includeMetadata.get(), includeVolatile.get());
String identifier = new RandomIdentifierGenerator().generate();
ListPeers listPeers = new ListPeers(identifier, includeMetadata.get(), includeVolatile.get());
- return threadPool.submit(() -> new ListPeersReplySequence().send(listPeers).get());
+ try (ListPeersDialog listPeersDialog = new ListPeersDialog()) {
+ return listPeersDialog.send(listPeers).get();
+ }
}
}
- private class ListPeers
ReplySequence extends FcpReplySequence
<Collection<Peer>> {
+ private class ListPeers
Dialog extends FcpDialog
<Collection<Peer>> {
private final Collection<Peer> peers = new HashSet<>();
private final AtomicBoolean finished = new AtomicBoolean(false);
private final Collection<Peer> peers = new HashSet<>();
private final AtomicBoolean finished = new AtomicBoolean(false);
- public ListPeers
ReplySequence
() throws IOException {
+ public ListPeers
Dialog
() throws IOException {
super(threadPool, connectionSupplier.get());
}
super(threadPool, connectionSupplier.get());
}