From 665d73af0cdc11d6e262d72a4ee71f5d29cefbd6 Mon Sep 17 00:00:00 2001 From: Tux Date: Sat, 6 Jun 2015 16:39:10 -0400 Subject: [PATCH] more try-with-resources. --- .../redisbungee/RedisBungeeListener.java | 35 +++++++++---------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungeeListener.java b/src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungeeListener.java index 736367b..92f5a90 100644 --- a/src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungeeListener.java +++ b/src/main/java/com/imaginarycode/minecraft/redisbungee/RedisBungeeListener.java @@ -42,32 +42,29 @@ public class RedisBungeeListener implements Listener { @EventHandler public void onPlayerConnect(final PostLoginEvent event) { - Jedis rsc = plugin.getPool().getResource(); - try { + try (Jedis rsc = plugin.getPool().getResource()) { for (String server : plugin.getServerIds()) { if (rsc.sismember("proxy:" + server + ":usersOnline", event.getPlayer().getUniqueId().toString())) { event.getPlayer().disconnect(ALREADY_LOGGED_IN); return; } } - - plugin.getService().submit(new RedisCallable(plugin) { - @Override - protected Void call(Jedis jedis) { - jedis.sadd("proxy:" + RedisBungee.getApi().getServerId() + ":usersOnline", event.getPlayer().getUniqueId().toString()); - jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "online", "0"); - jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "ip", event.getPlayer().getAddress().getAddress().getHostAddress()); - plugin.getUuidTranslator().persistInfo(event.getPlayer().getName(), event.getPlayer().getUniqueId(), jedis); - jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "proxy", RedisBungee.getConfiguration().getServerId()); - jedis.publish("redisbungee-data", RedisBungee.getGson().toJson(new DataManager.DataManagerMessage<>( - event.getPlayer().getUniqueId(), DataManager.DataManagerMessage.Action.JOIN, - new DataManager.LoginPayload(event.getPlayer().getAddress().getAddress())))); - return null; - } - }); - } finally { - plugin.getPool().returnResource(rsc); } + + plugin.getService().submit(new RedisCallable(plugin) { + @Override + protected Void call(Jedis jedis) { + jedis.sadd("proxy:" + RedisBungee.getApi().getServerId() + ":usersOnline", event.getPlayer().getUniqueId().toString()); + jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "online", "0"); + jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "ip", event.getPlayer().getAddress().getAddress().getHostAddress()); + plugin.getUuidTranslator().persistInfo(event.getPlayer().getName(), event.getPlayer().getUniqueId(), jedis); + jedis.hset("player:" + event.getPlayer().getUniqueId().toString(), "proxy", RedisBungee.getConfiguration().getServerId()); + jedis.publish("redisbungee-data", RedisBungee.getGson().toJson(new DataManager.DataManagerMessage<>( + event.getPlayer().getUniqueId(), DataManager.DataManagerMessage.Action.JOIN, + new DataManager.LoginPayload(event.getPlayer().getAddress().getAddress())))); + return null; + } + }); } @EventHandler