aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrumeet <17158086+Trumeet@users.noreply.github.com>2021-01-21 18:19:58 -0800
committerTrumeet <17158086+Trumeet@users.noreply.github.com>2021-01-21 18:19:58 -0800
commitea5c98c33854da1681b9d46165e8f990b76d4813 (patch)
treec171b94a3ac2938703a2ab53a9d3fbd444056044
parent743ce8116634ccdce6dccec83571bcbdcfce1eb2 (diff)
downloaddn42peering-ea5c98c33854da1681b9d46165e8f990b76d4813.tar
dn42peering-ea5c98c33854da1681b9d46165e8f990b76d4813.tar.gz
dn42peering-ea5c98c33854da1681b9d46165e8f990b76d4813.tar.bz2
dn42peering-ea5c98c33854da1681b9d46165e8f990b76d4813.zip
fix(central): NoSuchElementException if we cannot find any peers
-rw-r--r--central/src/main/java/moe/yuuta/dn42peering/peer/PeerServiceImpl.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/central/src/main/java/moe/yuuta/dn42peering/peer/PeerServiceImpl.java b/central/src/main/java/moe/yuuta/dn42peering/peer/PeerServiceImpl.java
index 99c31af..62223c2 100644
--- a/central/src/main/java/moe/yuuta/dn42peering/peer/PeerServiceImpl.java
+++ b/central/src/main/java/moe/yuuta/dn42peering/peer/PeerServiceImpl.java
@@ -159,7 +159,11 @@ class PeerServiceImpl implements IPeerService {
"WHERE id = #{id} AND asn = #{asn}")
.mapTo(PeerRowMapper.INSTANCE)
.execute(params, f))
- .compose(peers -> Future.succeededFuture(peers.iterator().next()))
+ .compose(peers -> {
+ if(peers.iterator().hasNext())
+ return Future.succeededFuture(peers.iterator().next());
+ return Future.succeededFuture(null);
+ })
.onComplete(handler);
return this;
}