diff --git a/src/org/apollo/game/GameService.java b/src/org/apollo/game/GameService.java index d6bdee08..b85a7b91 100644 --- a/src/org/apollo/game/GameService.java +++ b/src/org/apollo/game/GameService.java @@ -20,11 +20,12 @@ import org.apollo.io.MessageHandlerChainSetParser; import org.apollo.login.LoginService; import org.apollo.net.session.GameSession; import org.apollo.util.MobRepository; -import org.apollo.util.NamedThreadFactory; import org.apollo.util.xml.XmlNode; import org.apollo.util.xml.XmlParser; import org.xml.sax.SAXException; +import com.google.common.util.concurrent.ThreadFactoryBuilder; + /** * The {@link GameService} class schedules and manages the execution of the {@link GamePulseHandler} class. * @@ -51,7 +52,7 @@ public final class GameService extends Service { /** * The scheduled executor service. */ - private final ScheduledExecutorService scheduledExecutor = Executors.newSingleThreadScheduledExecutor(new NamedThreadFactory("GameService")); + private final ScheduledExecutorService scheduledExecutor = Executors.newSingleThreadScheduledExecutor(new ThreadFactoryBuilder().setNameFormat("GameService").build()); /** * The {@link ClientSynchronizer}. diff --git a/src/org/apollo/game/sync/ParallelClientSynchronizer.java b/src/org/apollo/game/sync/ParallelClientSynchronizer.java index 49ddc088..325a2ce3 100644 --- a/src/org/apollo/game/sync/ParallelClientSynchronizer.java +++ b/src/org/apollo/game/sync/ParallelClientSynchronizer.java @@ -22,7 +22,8 @@ import org.apollo.game.sync.task.PreNpcSynchronizationTask; import org.apollo.game.sync.task.PrePlayerSynchronizationTask; import org.apollo.game.sync.task.SynchronizationTask; import org.apollo.util.MobRepository; -import org.apollo.util.NamedThreadFactory; + +import com.google.common.util.concurrent.ThreadFactoryBuilder; /** * An implementation of {@link ClientSynchronizer} which runs in a thread pool. A {@link Phaser} is used to ensure that @@ -52,7 +53,7 @@ public final class ParallelClientSynchronizer extends ClientSynchronizer { */ public ParallelClientSynchronizer() { int processors = Runtime.getRuntime().availableProcessors(); - ThreadFactory factory = new NamedThreadFactory("ClientSynchronizer"); + ThreadFactory factory = new ThreadFactoryBuilder().setNameFormat("ClientSynchronizer").build(); executor = Executors.newFixedThreadPool(processors, factory); } diff --git a/src/org/apollo/login/LoginService.java b/src/org/apollo/login/LoginService.java index d0984dc1..873e265d 100644 --- a/src/org/apollo/login/LoginService.java +++ b/src/org/apollo/login/LoginService.java @@ -16,11 +16,12 @@ import org.apollo.net.codec.login.LoginRequest; import org.apollo.net.release.Release; import org.apollo.net.session.GameSession; import org.apollo.net.session.LoginSession; -import org.apollo.util.NamedThreadFactory; import org.apollo.util.xml.XmlNode; import org.apollo.util.xml.XmlParser; import org.xml.sax.SAXException; +import com.google.common.util.concurrent.ThreadFactoryBuilder; + /** * The {@link LoginService} manages {@link LoginRequest}s. * @@ -32,7 +33,7 @@ public final class LoginService extends Service { /** * The {@link ExecutorService} to which workers are submitted. */ - private final ExecutorService executor = Executors.newCachedThreadPool(new NamedThreadFactory("LoginService")); + private final ExecutorService executor = Executors.newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("LoginService").build()); /** * The current {@link PlayerSerializer}. diff --git a/src/org/apollo/util/NamedThreadFactory.java b/src/org/apollo/util/NamedThreadFactory.java deleted file mode 100644 index 78181380..00000000 --- a/src/org/apollo/util/NamedThreadFactory.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.apollo.util; - -import java.util.concurrent.ThreadFactory; -import java.util.concurrent.atomic.AtomicInteger; - -/** - * A {@link ThreadFactory} which gives each thread a unique name made up of the name supplied in the constructor and - * postfixed with an id. - *

- * For example, if the name {@code MyThread} was given and a third thread was created by the factory, the resulting name - * would be {@code MyThread [id=2]}. - * - * @author Graham - */ -public final class NamedThreadFactory implements ThreadFactory { - - /** - * The next id. - */ - private AtomicInteger id = new AtomicInteger(0); - - /** - * The unique name. - */ - private final String name; - - /** - * Creates the named thread factory. - * - * @param name The unique name. - */ - public NamedThreadFactory(String name) { - this.name = name; - } - - @Override - public Thread newThread(Runnable runnable) { - int currentId = id.getAndIncrement(); - return new Thread(runnable, name + " [id=" + currentId + "]"); - } - -} \ No newline at end of file