// Apache Thrift Server Transport in Java import java.io.UnsupportedEncodingException; import org.apache.thrift.transport.TServerSocket; import org.apache.thrift.transport.TServerTransport; import org.apache.thrift.transport.TTransport; import org.apache.thrift.transport.TTransportException; public class ServerTrans { public static void main(String[] args) throws TTransportException, UnsupportedEncodingException { final String msg = "Hello Thrift!\n"; final String stop_cmd = "STOP"; final int buf_size = 1024*8; byte[] buf = new byte[buf_size]; final int port = 9090; TServerTransport acceptor = new TServerSocket(9090); acceptor.listen(); System.out.println("[Server] listening on port: " + port); String input; do { TTransport trans = acceptor.accept(); int len = trans.read(buf, 0, buf_size); input = new String(buf, 0, len,"UTF-8"); System.out.println("[Server] handling request: " + input); trans.write(msg.getBytes()); trans.flush(); trans.close(); } while (! stop_cmd.regionMatches(0, input, 0, 4)); System.out.println("[Server] exiting"); acceptor.close(); } }