blob: ebacbfc4bb7b1ef60073f433810e633ed8dfe5db (
plain) (
tree)
|
|
package org.openslx.imagemaster.thrift.server;
import org.apache.log4j.Logger;
import org.apache.thrift.protocol.TProtocolFactory;
import org.apache.thrift.server.THsHaServer;
import org.apache.thrift.server.TServer;
import org.apache.thrift.transport.TNonblockingServerSocket;
import org.apache.thrift.transport.TNonblockingServerTransport;
import org.apache.thrift.transport.TTransportException;
import org.openslx.imagemaster.thrift.iface.ImageServer;
public class BinaryListener implements Runnable
{
private static Logger log = Logger.getLogger( BinaryListener.class );
@Override
public void run()
{
final ImageServerHandler handler = new ImageServerHandler();
final ImageServer.Processor<ImageServerHandler> processor = new ImageServer.Processor<ImageServerHandler>( handler );
final TProtocolFactory protFactory = new TBinaryProtocolSafe.Factory( true, true );
final TNonblockingServerTransport transport;
try {
transport = new TNonblockingServerSocket( 9090 );
} catch ( TTransportException e ) {
log.fatal( "Could not listen on port 9090" );
return;
}
THsHaServer.Args args = new THsHaServer.Args( transport ).protocolFactory( protFactory ).processor( processor ).workerThreads( 8 );
args.maxReadBufferBytes = 30l * 1000l * 1000l;
TServer server = new THsHaServer( args );
log.info( "Starting Binary Thrift" );
server.serve();
System.exit(1);
}
}
|