public synchronized void open() throws IOException {
try {
// Start the thrift server with a framed transport - suitable for
// scribe clients
this.start(new scribe.Processor(this), "ScribeEventSource",
new TSaneServerSocket(port) {
// we are providing the transport to ThriftServer -- the sole
// job of this sane server subclass is to wrap the socket
// with a framed transport
protected TTransport acceptImpl() throws TTransportException {
return new TFramedTransport(super.acceptImpl());