package server; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.apache.log4j.BasicConfigurator; import org.apache.log4j.Logger; import server.BinaryListener; import org.apache.thrift.protocol.TProtocolFactory; import org.apache.thrift.server.TServer; import org.apache.thrift.server.TThreadPoolServer; import org.apache.thrift.transport.TServerSocket; import org.apache.thrift.transport.TServerTransport; import org.apache.thrift.transport.TTransportException; import org.apache.thrift.server.TThreadPoolServer.Args; public class startServer { /** * @param args */ private static Logger log = Logger.getLogger( startServer.class ); private static List servers = new ArrayList<>(); public static void main(String[] args) { //final ImageServerHandler handler = new ImageServerHandler(); //final ImageServer.Processor processor = new ImageServer.Processor(handler); /* try{ TServerTransport serverTransport = new TServerSocket(9090); //TServer server = new TSimpleServer(new Args(serverTransport).processor(processor)); TServer server = new TThreadPoolServer(new TThreadPoolServer.Args(serverTransport).processor(processor)); server.serve(); } catch (Exception e){ e.printStackTrace(); } */ //deprecated BasicConfigurator.configure(); log.info( new Date() + " - starting Application\n" ); Thread t; t = new Thread(new BinaryListener()); servers.add(t); t.start(); //information log.info( new Date()+" - new thread created. Now "+servers.size()+" thread(s).\n" ); // Run more servers // ... // Wait for all servers to die for (Thread wait : servers) { boolean success = false; while (!success) { try { wait.join(); success = true; } catch ( InterruptedException e ) { // Do nothing... } } } log.info( new Date()+" - all Servers shut down, exiting...\n" ); } }