List of usage examples for org.apache.thrift.transport TServerSocket listen
public void listen() throws TTransportException
From source file:org.apache.accumulo.cloudtrace.instrument.TracerTest.java
License:Apache License
@Test public void testThrift() throws Exception { TestReceiver tracer = new TestReceiver(); Tracer.getInstance().addReceiver(tracer); ServerSocket socket = new ServerSocket(0); TServerSocket transport = new TServerSocket(socket); transport.listen(); TThreadPoolServer.Args args = new TThreadPoolServer.Args(transport); args.processor(new TestService.Processor(TraceWrap.service(new Service()))); final TServer tserver = new TThreadPoolServer(args); Thread t = new Thread() { public void run() { tserver.serve();//from w w w . ja va2 s .c o m } }; t.start(); TTransport clientTransport = new TSocket(new Socket("localhost", socket.getLocalPort())); TestService.Iface client = new TestService.Client(new TBinaryProtocol(clientTransport), new TBinaryProtocol(clientTransport)); client = TraceWrap.client(client); assertFalse(client.checkTrace(null, "test")); Span start = Trace.on("start"); assertTrue(client.checkTrace(null, "my test")); start.stop(); assertNotNull(tracer.traces.get(start.traceId())); String traces[] = { "my test", "checkTrace", "client:checkTrace", "start" }; assertTrue(tracer.traces.get(start.traceId()).size() == traces.length); for (int i = 0; i < traces.length; i++) assertEquals(traces[i], tracer.traces.get(start.traceId()).get(i).description); tserver.stop(); t.join(100); }
From source file:org.apache.accumulo.core.client.TestThrift1474.java
License:Apache License
@Test public void test() throws IOException, TException, InterruptedException { TServerSocket serverTransport = new TServerSocket(0); serverTransport.listen(); int port = serverTransport.getServerSocket().getLocalPort(); TestServer handler = new TestServer(); ThriftTest.Processor<ThriftTest.Iface> processor = new ThriftTest.Processor<ThriftTest.Iface>(handler); TThreadPoolServer.Args args = new TThreadPoolServer.Args(serverTransport); args.stopTimeoutVal = 10;/* w w w. j a va2s .c o m*/ args.stopTimeoutUnit = TimeUnit.MILLISECONDS; final TServer server = new TThreadPoolServer(args.processor(processor)); Thread thread = new Thread() { @Override public void run() { server.serve(); } }; thread.start(); while (!server.isServing()) { UtilWaitThread.sleep(10); } TTransport transport = new TSocket("localhost", port); transport.open(); TProtocol protocol = new TBinaryProtocol(transport); ThriftTest.Client client = new ThriftTest.Client(protocol); assertTrue(client.success()); assertFalse(client.fails()); try { client.throwsError(); fail("no exception thrown"); } catch (ThriftSecurityException ex) { // expected } server.stop(); thread.join(); }
From source file:org.apache.accumulo.trace.instrument.TracerTest.java
License:Apache License
@Test public void testThrift() throws Exception { TestReceiver tracer = new TestReceiver(); Tracer.getInstance().addReceiver(tracer); ServerSocket socket = new ServerSocket(0); TServerSocket transport = new TServerSocket(socket); transport.listen(); TThreadPoolServer.Args args = new TThreadPoolServer.Args(transport); args.processor(new Processor<Iface>(TraceWrap.service(new Service()))); final TServer tserver = new TThreadPoolServer(args); Thread t = new Thread() { public void run() { tserver.serve();/* w w w . j a va 2 s .c o m*/ } }; t.start(); TTransport clientTransport = new TSocket(new Socket("localhost", socket.getLocalPort())); TestService.Iface client = new TestService.Client(new TBinaryProtocol(clientTransport), new TBinaryProtocol(clientTransport)); client = TraceWrap.client(client); assertFalse(client.checkTrace(null, "test")); Span start = Trace.on("start"); assertTrue(client.checkTrace(null, "my test")); start.stop(); assertNotNull(tracer.traces.get(start.traceId())); String traces[] = { "my test", "checkTrace", "client:checkTrace", "start" }; assertTrue(tracer.traces.get(start.traceId()).size() == traces.length); for (int i = 0; i < traces.length; i++) assertEquals(traces[i], tracer.traces.get(start.traceId()).get(i).description); tserver.stop(); t.join(100); }
From source file:org.apache.accumulo.tracer.TracerTest.java
License:Apache License
@Test public void testThrift() throws Exception { TestReceiver tracer = new TestReceiver(); org.apache.htrace.Trace.addReceiver(tracer); ServerSocket socket = new ServerSocket(0); TServerSocket transport = new TServerSocket(socket); transport.listen(); TThreadPoolServer.Args args = new TThreadPoolServer.Args(transport); args.processor(new Processor<Iface>(TraceWrap.service(new Service()))); final TServer tserver = new TThreadPoolServer(args); Thread t = new Thread() { @Override/* ww w. j ava 2 s . c o m*/ public void run() { tserver.serve(); } }; t.start(); TTransport clientTransport = new TSocket(new Socket("localhost", socket.getLocalPort())); TestService.Iface client = new TestService.Client(new TBinaryProtocol(clientTransport), new TBinaryProtocol(clientTransport)); client = TraceWrap.client(client); assertFalse(client.checkTrace(null, "test")); Span start = Trace.on("start"); assertTrue(client.checkTrace(null, "my test")); start.stop(); assertNotNull(tracer.traces.get(start.traceId())); String traces[] = { "my test", "checkTrace", "client:checkTrace", "start" }; assertTrue(tracer.traces.get(start.traceId()).size() == traces.length); for (int i = 0; i < traces.length; i++) assertEquals(traces[i], tracer.traces.get(start.traceId()).get(i).description); tserver.stop(); t.join(100); }