package org.jabref.logic.remote.server; import java.io.IOException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * This thread wrapper is required to be able to interrupt the remote listener while listening on a port. */ public class RemoteListenerServerThread extends Thread { private static final Log LOGGER = LogFactory.getLog(RemoteListenerServerThread.class); private final RemoteListenerServer server; public RemoteListenerServerThread(MessageHandler messageHandler, int port) throws IOException { this.server = new RemoteListenerServer(messageHandler, port); this.setName("JabRef - Remote Listener Server on port " + port); } @Override public void interrupt() { super.interrupt(); LOGGER.debug("Interrupting " + this.getName()); this.server.closeServerSocket(); } @Override public void run() { this.server.run(); } }