package com.ganji.as.thrift.protocol.client.test;
/**
*
*/
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import org.apache.thrift.async.TAsyncClientManager;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.thrift.protocol.TProtocolFactory;
import org.apache.thrift.transport.TNonblockingSocket;
import org.apache.thrift.transport.TNonblockingTransport;
import org.apache.thrift.transport.TSocket;
import org.apache.thrift.transport.TTransport;
/**
* @author yikangfeng
* @date 2015年7月23日
*/
public class TestAsyncClient {
public static void main(String[] args) throws Exception {
TSocket socket;
try {
TAsyncClientManager clientManager = new TAsyncClientManager();
TNonblockingTransport transport = new TNonblockingSocket(
"192.168.35.131",8020);
TProtocolFactory protocol = new TBinaryProtocol.Factory();
PostLimitServiceFinagle.AsyncClient asyncClient = new PostLimitServiceFinagle.AsyncClient.Factory(clientManager, protocol).getAsyncClient(transport);
MethodCallback callBack=new MethodCallback();
final String param = "{\"category_script_index\":4,\"majorcategory_script_index\":-1,\"category_id\":2,\"city_code\":-1,\"user_id\":2}";
asyncClient.getPostLimit(param,"async-client", callBack);
System.out.println("Client calls .....");
Object res = callBack.getResult();
System.out.println("res=");
System.out.println((( PostLimitServiceFinagle.AsyncClient.getPostLimit_call) res)
.getResult());
System.out.println("end");
transport.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}