Java Code Examples for org.apache.thrift.protocol.TBinaryProtocol.Factory

The following are Jave code examples for showing how to use Factory of the org.apache.thrift.protocol.TBinaryProtocol class. You can vote up the examples you like. Your votes will be used in our system to get more good examples.
+ Save this method
Example 1
Project: flume-release-1.7.0   File: ThriftTestingSource.java   View Source Code Vote up 6 votes
public ThriftTestingSource(String handlerName, int port, String protocol) throws Exception {
  TNonblockingServerTransport serverTransport =
      new TNonblockingServerSocket(new InetSocketAddress("0.0.0.0", port));
  ThriftSourceProtocol.Iface handler = getHandler(handlerName);

  TProtocolFactory transportProtocolFactory = null;
  if (protocol != null && protocol == ThriftRpcClient.BINARY_PROTOCOL) {
    transportProtocolFactory = new TBinaryProtocol.Factory();
  } else {
    transportProtocolFactory = new TCompactProtocol.Factory();
  }
  server = new THsHaServer(new THsHaServer.Args(serverTransport).processor(
      new ThriftSourceProtocol.Processor(handler)).protocolFactory(
          transportProtocolFactory));
  Executors.newSingleThreadExecutor().submit(new Runnable() {
    @Override
    public void run() {
      server.serve();
    }
  });
}
 
Example 2
Project: flume-release-1.7.0   File: ThriftSource.java   View Source Code Vote up 6 votes
private TProtocolFactory getProtocolFactory() {
  if (protocol.equals(BINARY_PROTOCOL)) {
    logger.info("Using TBinaryProtocol");
    return new TBinaryProtocol.Factory();
  } else {
    logger.info("Using TCompactProtocol");
    return new TCompactProtocol.Factory();
  }
}
 
Example 3
Project: leaf-snowflake   File: rpcServer.java   View Source Code Vote up 6 votes
public static void startRPCServer(leafServer leafserver , String ip , int port) throws Exception
{
	ServerSocket serverSocket = new ServerSocket(port,10000, InetAddress.getByName(ip));

	TServerSocket serverTransport = new TServerSocket(serverSocket);

	//设置协议工厂为TBinaryProtocolFactory
	Factory proFactory = new TBinaryProtocol.Factory();
	//关联处理器leafrpc的实现
	TProcessor processor = new leafrpc.Processor<leafrpc.Iface>(new RPCService(leafserver));
	TThreadPoolServer.Args args2 = new TThreadPoolServer.Args(serverTransport);
	args2.processor(processor);
	args2.protocolFactory(proFactory);
	TServer server = new TThreadPoolServer(args2);
	LOG.info("leaf RPCServer(type:TThreadPoolServer) start at ip:port : "+ ip +":" + port );
	server.serve();
}
 
Example 4
Project: trpc   File: DemoServer.java   View Source Code Vote up 6 votes
public void start(CountDownLatch latch, int port) {
    try {
        TNonblockingServerSocket serverTransport = new TNonblockingServerSocket(port);
        //异步IO,需要使用TFramedTransport,它将分块缓存读取。
        TTransportFactory transportFactory = new TFramedTransport.Factory();
        //使用高密度二进制协议
        TProtocolFactory proFactory = new TBinaryProtocol.Factory();
        //发布多个服务
        TMultiplexedProcessor processor = new TMultiplexedProcessor();
        processor.registerProcessor(ClassNameUtils.getClassName(Hello.class), new Hello.Processor<>(new HelloServer()));

        TServer server = new TThreadedSelectorServer(new
                TThreadedSelectorServer.Args(serverTransport)
                .transportFactory(transportFactory)
                .protocolFactory(proFactory)
                .processor(processor)
        );
        System.out.println("Starting the hello server...");
        latch.countDown();
        server.serve();
    } catch (Exception e) {
        e.printStackTrace();
    }
}
 
Example 5
Project: EatDubbo   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 6
Project: drift   File: TestDriftNettyMethodInvoker.java   View Source Code Vote up 5 votes
private static int testProcessor(TProcessor processor, List<ToIntFunction<HostAndPort>> clients)
        throws Exception
{
    try (TServerSocket serverTransport = new TServerSocket(0)) {
        TProtocolFactory protocolFactory = new TBinaryProtocol.Factory();
        TTransportFactory transportFactory = new TFramedTransport.Factory();
        TServer server = new TSimpleServer(new Args(serverTransport)
                .protocolFactory(protocolFactory)
                .transportFactory(transportFactory)
                .processor(processor));

        Thread serverThread = new Thread(server::serve);
        try {
            serverThread.start();

            int localPort = serverTransport.getServerSocket().getLocalPort();
            HostAndPort address = HostAndPort.fromParts("localhost", localPort);

            int sum = 0;
            for (ToIntFunction<HostAndPort> client : clients) {
                sum += client.applyAsInt(address);
            }
            return sum;
        }
        finally {
            server.stop();
            serverThread.interrupt();
        }
    }
}
 
Example 7
Project: dubbo2   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 8
Project: flume-release-1.7.0   File: ThriftTestingSource.java   View Source Code Vote up 5 votes
public ThriftTestingSource(String handlerName, int port,
                           String protocol, String keystore,
                           String keystorePassword, String keyManagerType,
                           String keystoreType) throws Exception {
  TSSLTransportFactory.TSSLTransportParameters params =
          new TSSLTransportFactory.TSSLTransportParameters();
  params.setKeyStore(keystore, keystorePassword, keyManagerType, keystoreType);

  TServerSocket serverTransport = TSSLTransportFactory.getServerSocket(
          port, 10000, InetAddress.getByName("0.0.0.0"), params);

  ThriftSourceProtocol.Iface handler = getHandler(handlerName);

  Class serverClass = Class.forName("org.apache.thrift" +
          ".server.TThreadPoolServer");
  Class argsClass = Class.forName("org.apache.thrift.server" +
          ".TThreadPoolServer$Args");
  TServer.AbstractServerArgs args = (TServer.AbstractServerArgs) argsClass
          .getConstructor(TServerTransport.class)
          .newInstance(serverTransport);
  Method m = argsClass.getDeclaredMethod("maxWorkerThreads", int.class);
  m.invoke(args, Integer.MAX_VALUE);
  TProtocolFactory transportProtocolFactory = null;
  if (protocol != null && protocol == ThriftRpcClient.BINARY_PROTOCOL) {
    transportProtocolFactory = new TBinaryProtocol.Factory();
  } else {
    transportProtocolFactory = new TCompactProtocol.Factory();
  }
  args.protocolFactory(transportProtocolFactory);
  args.inputTransportFactory(new TFastFramedTransport.Factory());
  args.outputTransportFactory(new TFastFramedTransport.Factory());
  args.processor(new ThriftSourceProtocol.Processor<ThriftSourceProtocol.Iface>(handler));
  server = (TServer) serverClass.getConstructor(argsClass).newInstance(args);
  Executors.newSingleThreadExecutor().submit(new Runnable() {
    @Override
    public void run() {
      server.serve();
    }
  });
}
 
Example 9
Project: dubbox-hystrix   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 10
Project: dubbocloud   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 11
Project: ditb   File: ThriftServer.java   View Source Code Vote up 5 votes
private static TProtocolFactory getTProtocolFactory(boolean isCompact) {
  if (isCompact) {
    log.debug("Using compact protocol");
    return new TCompactProtocol.Factory();
  } else {
    log.debug("Using binary protocol");
    return new TBinaryProtocol.Factory();
  }
}
 
Example 12
Project: osquery-java   File: PluginManager.java   View Source Code Vote up 5 votes
/**
 * Start extension by communicating with osquery core and starting thrift
 * server
 * 
 * @param name
 *            name of extension
 * @param version
 *            version of extension
 * @param sdkVersion
 *            version of the osquery SDK used to build this extension
 * @param minSdkVersion
 *            minimum version of the osquery SDK that you can use
 * @throws IOException
 * @throws ExtensionException
 */
public void startExtension(String name, String version, String sdkVersion, String minSdkVersion)
		throws IOException, ExtensionException {
	ExtensionManager.Client client = new ClientManager(EXTENSION_SOCKET).getClient();
	InternalExtensionInfo info = new InternalExtensionInfo(name, version, sdkVersion, minSdkVersion);
	try {
		ExtensionStatus status = client.registerExtension(info, registry);
		if (status.getCode() == 0) {
			this.uuid = status.uuid;
			Processor<PluginManager> processor = new Processor<PluginManager>(this);
			String serverSocketPath = EXTENSION_SOCKET + "." + String.valueOf(uuid);
			File socketFile = new File(serverSocketPath);
			if (socketFile.exists()) {
				socketFile.delete();
			}
			AFUNIXServerSocket socket = AFUNIXServerSocket.bindOn(new AFUNIXSocketAddress(socketFile));
			socketFile.setExecutable(true, false);
			socketFile.setWritable(true, false);
			socketFile.setReadable(true, false);
			TServerSocket transport = new TServerSocket(socket);
			TTransportFactory transportFactory = new TTransportFactory();
			TProtocolFactory protocolFactory = new TBinaryProtocol.Factory();
			TServer server = new TSimpleServer(new Args(transport).processor(processor)
					.transportFactory(transportFactory).protocolFactory(protocolFactory));

			// Run it
			System.out.println("Starting the server...");
			server.serve();
		} else {
			throw new ExtensionException(1, status.getMessage(), uuid);
		}
	} catch (TException e) {
		throw new ExtensionException(1, "Could not connect to socket", uuid);
	}
}
 
Example 13
Project: trpc   File: ThriftServerPublisher.java   View Source Code Vote up 5 votes
public void init() {
    try {
        TMultiplexedProcessor processor = new TMultiplexedProcessor();
        for (ServiceArgs service : serverArgs.getServices()) {
            String className = service.getService();
            if (className.endsWith("$Processor")) {
                className = className.substring(0, className.indexOf("$Processor"));
            }
            processor.registerProcessor(className, service.getProcessor());
        }
        if (serverArgs.getNettyServerArgs() != null) {
            this.server = new TNettyServer(serverArgs.getNettyServerArgs().ip(serverArgs.getHost()).port(serverArgs.getPort()));
        } else {
            TNonblockingServerSocket serverTransport = new TNonblockingServerSocket(new InetSocketAddress(serverArgs.getHost(), serverArgs.getPort()));
            //异步IO,需要使用TFramedTransport,它将分块缓存读取。
            TTransportFactory transportFactory = new TFramedTransport.Factory();
            //使用高密度二进制协议
            TProtocolFactory proFactory = new TBinaryProtocol.Factory();
            // Use this for a multithreaded key
            this.server = new TThreadedSelectorServer(new
                    TThreadedSelectorServer.Args(serverTransport)
                    .transportFactory(transportFactory)
                    .protocolFactory(proFactory)
                    .processor(processor)
            );
        }
        log.info("Starting the Thrift key...");
        this.server.setServerEventHandler(new TrpcRegistryEventHandler(serverArgs));
        this.server.serve();
        if (this.serverArgs.getNettyServerArgs() != null) {
            ((TNettyServer) this.server).waitForClose();
        }
    } catch (Exception e) {
        log.error("publish thrift key error", e);
    }
}
 
Example 14
Project: dubbos   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 15
Project: dubbo-comments   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 16
Project: dubbox   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 17
Project: dubbo   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 18
Project: nifty-spring-boot-starter   File: NiftyServerProperties.java   View Source Code Vote up 5 votes
public TProtocolFactory getProtocolFactory() {
  switch (this) {
    case COMPACT:
      return new TCompactProtocol.Factory();
    case BINARY:
      return new TBinaryProtocol.Factory();
    default:
      return new TBinaryProtocol.Factory();
  }
}
 
Example 19
Project: yarpc-java   File: EchoGrpcBehavior.java   View Source Code Vote up 5 votes
/**
 * Given a message, produce an {@link InputStream} for it so that it can be written to the wire.
 * Where possible implementations should produce streams that are {@link KnownLength} to improve
 * transport efficiency.
 *
 * @param value to serialize.
 * @return serialized value as stream of bytes.
 */
@Override
public InputStream stream(T value) {
  TSerializer ttSerializer = new TSerializer(new TBinaryProtocol.Factory());
  try {
    byte[] data = ttSerializer.serialize(value);
    return new ByteArrayInputStream(data);
  } catch (TException e) {
    e.printStackTrace();
  }
  return null;
}
 
Example 20
Project: dubbo-learning   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 21
Project: thrifty   File: TestServer.java   View Source Code Vote up 5 votes
private TProtocolFactory getProtocolFactory() {
    switch (protocol) {
        case BINARY: return new TBinaryProtocol.Factory();
        case COMPACT: return new TCompactProtocol.Factory();
        case JSON: return new TJSONProtocol.Factory();
        default:
            throw new AssertionError("Invalid protocol value: " + protocol);
    }
}
 
Example 22
Project: DubboCode   File: AbstractTest.java   View Source Code Vote up 5 votes
protected void init() throws Exception {
    TServerTransport serverTransport = new TServerSocket( PORT );

    TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

    server = new TThreadPoolServer(
            new TThreadPoolServer.Args( serverTransport )
                    .inputProtocolFactory( bFactory )
                    .outputProtocolFactory( bFactory )
                    .inputTransportFactory( getTransportFactory() )
                    .outputTransportFactory( getTransportFactory() )
                    .processor( getProcessor() ) );

    Thread startTread = new Thread() {

        @Override
        public void run() {
            server.serve();
        }

    };

    startTread.setName( "thrift-server" );

    startTread.start();

    while( !server.isServing() ) {
        Thread.sleep( 100 );
    }

    protocol = ExtensionLoader.getExtensionLoader(Protocol.class)
            .getExtension( ThriftProtocol.NAME );

    invoker = protocol.refer( getInterface(), getUrl() );

}
 
Example 23
Project: eagle   File: ThriftClientPool.java   View Source Code Vote up 5 votes
@Override
public T makeObject(InetSocketAddress socket) throws Exception {
  TNonblockingTransport nbTr = new TNonblockingSocket(
      socket.getAddress().getHostAddress(), socket.getPort());
  TProtocolFactory factory = new TBinaryProtocol.Factory();
  T client = maker.create(nbTr, clientManager, factory);
  transports.put(client, nbTr);
  return client;
}
 
Example 24
Project: high   File: Server.java   View Source Code Vote up 4 votes
public static void startServer() {
    // Create the handler
    //ThriftTestService.Iface serviceInterface = 
   //	MyService.Iface serviceInterface = new MyServiceHandler();

    // Create the processor
    //TProcessor processor = new MyService.Processor<>(serviceInterface);

    // Create the processor
    //TProcessor processor = new ThriftTestService.Processor<>(new InMemoryScribe());
	
	InMemoryScribe inMemoryScribe = new InMemoryScribeImpl();
	TProtocolFactory protocolFactory  = new TBinaryProtocol.Factory();
	ThriftCodecManager thriftCodecManager = new ThriftCodecManager();
	 List list  = new ArrayList<>();
	 list.add(inMemoryScribe);
	 
    ThriftServiceProcessor processor = new ThriftServiceProcessor(thriftCodecManager, Arrays.<ThriftEventHandler>asList(), inMemoryScribe);

    // Build the server definition
    ThriftServerDef serverDef = new ThriftServerDefBuilder().withProcessor(processor)
                                                            .build();

    // Create the server transport
    final NettyServerTransport server = new NettyServerTransport(serverDef	);

    // Create netty boss and executor thread pools
    ExecutorService bossExecutor = Executors.newCachedThreadPool();
    ExecutorService workerExecutor = Executors.newCachedThreadPool();

    // Start the server
    //server.start(bossExecutor, workerExecutor);
    server.start();
    // Arrange to stop the server at shutdown
    Runtime.getRuntime().addShutdownHook(new Thread() {
        @Override
        public void run() {
            try {
                server.stop();
            } catch (InterruptedException e) {
                Thread.currentThread().interrupt();
            }
        }
    });
}
 
Example 25
Project: high   File: Application.java   View Source Code Vote up 4 votes
@Bean
TProtocolFactory tProtocolFactory() {
    return new TBinaryProtocol.Factory();
}
 
Example 26
Project: ditb   File: ThriftServerRunner.java   View Source Code Vote up 4 votes
private void setupHTTPServer() throws IOException {
  TProtocolFactory protocolFactory = new TBinaryProtocol.Factory();
  TProcessor processor = new Hbase.Processor<Hbase.Iface>(handler);
  TServlet thriftHttpServlet = new ThriftHttpServlet(processor, protocolFactory, realUser,
      conf, hbaseHandler, securityEnabled, doAsEnabled);

  httpServer = new Server();
  // Context handler
  Context context = new Context(httpServer, "/", Context.SESSIONS);
  context.setContextPath("/");
  String httpPath = "/*";
  httpServer.setHandler(context);
  context.addServlet(new ServletHolder(thriftHttpServlet), httpPath);

  // set up Jetty and run the embedded server
  Connector connector = new SelectChannelConnector();
  if(conf.getBoolean(THRIFT_SSL_ENABLED, false)) {
    SslSelectChannelConnector sslConnector = new SslSelectChannelConnector();
    String keystore = conf.get(THRIFT_SSL_KEYSTORE_STORE);
    String password = HBaseConfiguration.getPassword(conf,
        THRIFT_SSL_KEYSTORE_PASSWORD, null);
    String keyPassword = HBaseConfiguration.getPassword(conf,
        THRIFT_SSL_KEYSTORE_KEYPASSWORD, password);
    sslConnector.setKeystore(keystore);
    sslConnector.setPassword(password);
    sslConnector.setKeyPassword(keyPassword);
    connector = sslConnector;
  }
  String host = getBindAddress(conf).getHostAddress();
  connector.setPort(listenPort);
  connector.setHost(host);
  connector.setHeaderBufferSize(1024 * 64);
  httpServer.addConnector(connector);

  if (doAsEnabled) {
    ProxyUsers.refreshSuperUserGroupsConfiguration(conf);
  }

  // Set the default max thread number to 100 to limit
  // the number of concurrent requests so that Thrfit HTTP server doesn't OOM easily.
  // Jetty set the default max thread number to 250, if we don't set it.
  //
  // Our default min thread number 2 is the same as that used by Jetty.
  int minThreads = conf.getInt(HTTP_MIN_THREADS, 2);
  int maxThreads = conf.getInt(HTTP_MAX_THREADS, 100);
  QueuedThreadPool threadPool = new QueuedThreadPool(maxThreads);
  threadPool.setMinThreads(minThreads);
  httpServer.setThreadPool(threadPool);

  httpServer.setSendServerVersion(false);
  httpServer.setSendDateHeader(false);
  httpServer.setStopAtShutdown(true);

  LOG.info("Starting Thrift HTTP Server on " + Integer.toString(listenPort));
}
 
Example 27
Project: nettythrift   File: DemoClientTraditionalTEST.java   View Source Code Vote up 4 votes
@Test
public void test_AsyncClient() throws Throwable {
	Random rnd = new Random(System.nanoTime());

	TProtocolFactory[] protfacs = new TProtocolFactory[] { new TCompactProtocol.Factory(),
			new TBinaryProtocol.Factory(), new TJSONProtocol.Factory(),
			new TSimpleJSONProtocol.Factory(TCalculator.Iface.class, false) };

	TProtocolFactory protocolFactory = protfacs[rnd.nextInt(protfacs.length)];

	System.out.println("protocolFactory: " + protocolFactory);

	TAsyncClientManager clientManager = new TAsyncClientManager();
	TNonblockingTransport transport = new TNonblockingSocket(HOST, PORT);
	TCalculator.AsyncClient client = new TCalculator.AsyncClient(protocolFactory, clientManager, transport);
	final int num1 = rnd.nextInt(Integer.MAX_VALUE / 2 - 1);
	final int num2 = rnd.nextInt(Integer.MAX_VALUE / 2 - 1);

	final CountDownLatch latch = new CountDownLatch(1);
	final Throwable[] exceptions = new Throwable[1];
	AsyncMethodCallback<TCalculator.AsyncClient.add_call> resultHandler = new AsyncMethodCallback<TCalculator.AsyncClient.add_call>() {
		@Override
		public void onComplete(TCalculator.AsyncClient.add_call response) {
			System.out.println("onComplete!");
			try {
				int result = response.getResult();
				Assert.assertEquals(num1 + num2, result);
			} catch (Throwable e) {
				exceptions[0] = e;
			} finally {
				latch.countDown();
			}
		}

		@Override
		public void onError(Exception exception) {
			System.err.println("onError!");
			exception.printStackTrace();
			latch.countDown();
		}

	};
	client.add(num1, num2, resultHandler);
	latch.await();
	transport.close();
	if (exceptions[0] != null) {
		throw exceptions[0];
	}
}
 
Example 28
Project: distributedlog   File: Utils.java   View Source Code Vote up 4 votes
@Override
public TSerializer initialValue() {
    return new TSerializer(new TBinaryProtocol.Factory());
}
 
Example 29
Project: yarpc-java   File: ThriftEncoding.java   View Source Code Vote up 4 votes
public static TProtocolFactory defaultProtocolFactory() {
  return new TBinaryProtocol.Factory();
}
 
Example 30
Project: EatDubbo   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 31
Project: dubbo2   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 32
Project: dubbox-hystrix   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 33
Project: dubbocloud   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 34
Project: dubbos   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 35
Project: dubbo-comments   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 36
Project: dubbox   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 37
Project: dubbo-learning   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }
 
Example 38
Project: DubboCode   File: ServiceMethodNotFoundTest.java   View Source Code Vote up 2 votes
protected void init() throws Exception {

        TServerTransport serverTransport = new TServerSocket( PORT );

        DubboDemoImpl impl = new DubboDemoImpl();

        $__DemoStub.Processor processor = new $__DemoStub.Processor( impl );

        // for test
        Field field = processor.getClass().getSuperclass().getDeclaredField( "processMap" );

        field.setAccessible( true );

        Object obj = field.get( processor );

        if ( obj instanceof Map ) {
            ( ( Map ) obj ).remove( "echoString" );
        }
        // ~

        TBinaryProtocol.Factory bFactory = new TBinaryProtocol.Factory();

        MultiServiceProcessor wrapper = new MultiServiceProcessor();
        wrapper.addProcessor( Demo.class, processor );

        server = new TThreadPoolServer(
                new TThreadPoolServer.Args( serverTransport )
                        .inputProtocolFactory( bFactory )
                        .outputProtocolFactory( bFactory )
                        .inputTransportFactory( getTransportFactory() )
                        .outputTransportFactory( getTransportFactory() )
                        .processor( wrapper ) );

        Thread startTread = new Thread() {

            @Override
            public void run() {

                server.serve();
            }

        };

        startTread.start();

        while ( !server.isServing() ) {
            Thread.sleep( 100 );
        }

    }