From 738050d3c2047264e6cd5359edc27bc78b817d87 Mon Sep 17 00:00:00 2001 From: games647 Date: Mon, 1 Aug 2016 11:17:54 +0200 Subject: [PATCH] Use BungeeCord's executorservice to shutdown the thread on server stop Fixes #6 Fixes #7 --- .../CommandSyncServer/ClientListener.java | 34 +++++++++---------- .../CommandSyncServer/CommandThread.java | 4 +-- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/ClientListener.java b/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/ClientListener.java index 038ec36..cd8d065 100644 --- a/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/ClientListener.java +++ b/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/ClientListener.java @@ -4,23 +4,23 @@ public class ClientListener extends Thread { - private CSS plugin; - private Integer heartbeat; - private String pass; + private CSS plugin; + private Integer heartbeat; + private String pass; - public ClientListener(CSS plugin, Integer heartbeat, String pass) { - this.plugin = plugin; - this.heartbeat = heartbeat; - this.pass = pass; - } + public ClientListener(CSS plugin, Integer heartbeat, String pass) { + this.plugin = plugin; + this.heartbeat = heartbeat; + this.pass = pass; + } - public void run() { - while(true) { - try { - new ClientHandler(plugin, plugin.server.accept(), heartbeat, pass).start(); - } catch(IOException e) { - e.printStackTrace(); - } - } - } + public void run() { + while (true) { + try { + plugin.getExecutorService().execute(new ClientHandler(plugin, plugin.server.accept(), heartbeat, pass)); + } catch (IOException e) { + e.printStackTrace(); + } + } + } } diff --git a/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/CommandThread.java b/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/CommandThread.java index 85d872e..659a769 100644 --- a/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/CommandThread.java +++ b/CommandSyncServer/src/com/fuzzoland/CommandSyncServer/CommandThread.java @@ -4,7 +4,7 @@ import net.md_5.bungee.api.connection.ProxiedPlayer; -public class CommandThread extends Thread { +public class CommandThread implements Runnable { private CSS plugin; private ProxiedPlayer player; @@ -29,7 +29,7 @@ public void run() { return; } catch(IllegalStateException e1) { try { - sleep(1000); + Thread.sleep(1000); } catch(InterruptedException e2) { e2.printStackTrace(); }