diff options
author | Trumeet <17158086+Trumeet@users.noreply.github.com> | 2021-01-21 18:19:58 -0800 |
---|---|---|
committer | Trumeet <17158086+Trumeet@users.noreply.github.com> | 2021-01-21 18:19:58 -0800 |
commit | ea5c98c33854da1681b9d46165e8f990b76d4813 (patch) | |
tree | c171b94a3ac2938703a2ab53a9d3fbd444056044 | |
parent | 743ce8116634ccdce6dccec83571bcbdcfce1eb2 (diff) | |
download | dn42peering-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.java | 6 |
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; } |