private static String writeThriftObjectAsTText(Consumer<TProtocol> writer) { final TMemoryBuffer buffer = new TMemoryBuffer(1024); final TProtocol protocol = new TTextProtocol.Factory().getProtocol(buffer); writer.accept(protocol); return new String(buffer.getArray(), 0, buffer.length()); }
private void invokeTwice(THttpService service1, THttpService service2) throws Exception { final HttpData content = HttpData.of(out.getArray(), 0, out.length()); invoke0(service1, content, promise); invoke0(service2, content, promise2); }
Unpooled.wrappedBuffer(out.getArray(), 0, out.length())); request.headers().add(HttpHeaderNames.HOST, host); request.headers().set(ExtensionHeaderNames.SCHEME.text(), uri.getScheme());
private void invoke(THttpService service) throws Exception { invoke0(service, HttpData.of(out.getArray(), 0, out.length()), promise); final HttpData res = promise.get(); in.reset(res.array(), res.offset(), res.length()); }
public Future<byte[]> apply(byte[] request) { TTransport inputTransport = new TMemoryInputTransport(request); TProtocol iprot = protocolFactory.getProtocol(inputTransport); TMessage msg; try { msg = iprot.readMessageBegin(); } catch (Exception e) { return Future.exception(e); } Function2<TProtocol, Integer, Future<byte[]>> fn = functionMap.get(msg.name); if (fn == null) { try { TProtocolUtil.skip(iprot, TType.STRUCT); iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.UNKNOWN_METHOD, "Invalid method name: '"+msg.name+"'"); TMemoryBuffer memoryBuffer = new TMemoryBuffer(512); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage(msg.name, TMessageType.EXCEPTION, msg.seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); return Future.value(Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length())); } catch (Exception e) { return Future.exception(e); } } return fn.apply(iprot, msg.seqid); } }
public Future<ServerInfo> handshake() { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("handshake", TMessageType.CALL, 0)); handshake_args __args__ = new handshake_args(); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<ServerInfo>>() { public Future<ServerInfo> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_handshake()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<ServerInfo> handshakeWithClientInfo(ClientInfo clientInfo) {
public Future<Void> setAcceptNewStream(boolean enabled) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("setAcceptNewStream", TMessageType.CALL, 0)); setAcceptNewStream_args __args__ = new setAcceptNewStream_args(); __args__.setEnabled(enabled); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<Void>>() { public Future<Void> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { (new Client(__prot__)).recv_setAcceptNewStream(); return Future.value(null); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } }
public Future<ServerInfo> handshakeWithClientInfo(ClientInfo clientInfo) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("handshakeWithClientInfo", TMessageType.CALL, 0)); handshakeWithClientInfo_args __args__ = new handshakeWithClientInfo_args(); __args__.setClientInfo(clientInfo); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<ServerInfo>>() { public Future<ServerInfo> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_handshakeWithClientInfo()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<WriteResponse> heartbeat(String stream, WriteContext ctx) {
public Future<WriteResponse> heartbeat(String stream, WriteContext ctx) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("heartbeat", TMessageType.CALL, 0)); heartbeat_args __args__ = new heartbeat_args(); __args__.setStream(stream); __args__.setCtx(ctx); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<WriteResponse>>() { public Future<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_heartbeat()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<WriteResponse> heartbeatWithOptions(String stream, WriteContext ctx, HeartbeatOptions options) {
public Future<WriteResponse> release(String stream, WriteContext ctx) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("release", TMessageType.CALL, 0)); release_args __args__ = new release_args(); __args__.setStream(stream); __args__.setCtx(ctx); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<WriteResponse>>() { public Future<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_release()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<WriteResponse> create(String stream, WriteContext ctx) {
public Future<WriteResponse> delete(String stream, WriteContext ctx) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("delete", TMessageType.CALL, 0)); delete_args __args__ = new delete_args(); __args__.setStream(stream); __args__.setCtx(ctx); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<WriteResponse>>() { public Future<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_delete()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<Void> setAcceptNewStream(boolean enabled) {
public Future<WriteResponse> write(String stream, ByteBuffer data) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("write", TMessageType.CALL, 0)); write_args __args__ = new write_args(); __args__.setStream(stream); __args__.setData(data); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<WriteResponse>>() { public Future<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_write()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<WriteResponse> writeWithContext(String stream, ByteBuffer data, WriteContext ctx) {
public Future<WriteResponse> create(String stream, WriteContext ctx) { try { // TODO: size TMemoryBuffer __memoryTransport__ = new TMemoryBuffer(512); TProtocol __prot__ = this.protocolFactory.getProtocol(__memoryTransport__); __prot__.writeMessageBegin(new TMessage("create", TMessageType.CALL, 0)); create_args __args__ = new create_args(); __args__.setStream(stream); __args__.setCtx(ctx); __args__.write(__prot__); __prot__.writeMessageEnd(); byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__); return __done__.flatMap(new Function<byte[], Future<WriteResponse>>() { public Future<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_create()); } catch (Exception e) { return Future.exception(e); } } }); } catch (TException e) { return Future.exception(e); } } public Future<WriteResponse> delete(String stream, WriteContext ctx) {
byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__);
byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__);
byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__);
byte[] __buffer__ = Arrays.copyOfRange(__memoryTransport__.getArray(), 0, __memoryTransport__.length()); ThriftClientRequest __request__ = new ThriftClientRequest(__buffer__, false); Future<byte[]> __done__ = this.service.apply(__request__);
@Test public void testMultipleInheritance() throws Exception { final NameService.Client client1 = new NameService.Client.Factory().getClient(inProto, outProto); client1.send_removeMiddle(new Name(BAZ, BAR, FOO)); assertThat(out.length()).isGreaterThan(0); final HttpData req1 = HttpData.of(out.getArray(), 0, out.length()); out = new TMemoryBuffer(128); outProto = ThriftProtocolFactories.get(defaultSerializationFormat).getProtocol(out); final NameSortService.Client client2 = new NameSortService.Client.Factory().getClient(inProto, outProto); client2.send_sort(Arrays.asList(NAME_C, NAME_B, NAME_A)); assertThat(out.length()).isGreaterThan(0); final HttpData req2 = HttpData.of(out.getArray(), 0, out.length()); final THttpService service = THttpService.of( (UberNameService) (names, callback) -> callback.onComplete( names.stream().sorted().collect(toImmutableList())), defaultSerializationFormat); invoke0(service, req1, promise); invoke0(service, req2, promise2); final HttpData res1 = promise.get(); final HttpData res2 = promise2.get(); in.reset(res1.array(), res1.offset(), res1.length()); assertThat(client1.recv_removeMiddle()).isEqualTo(new Name(BAZ, null, FOO)); in.reset(res2.array(), res2.offset(), res2.length()); assertThat(client2.recv_sort()).containsExactly(NAME_A, NAME_B, NAME_C); }
oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) {
oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) {