public void getResult() throws org.apache.thrift.TException { if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) { throw new IllegalStateException("Method call not finished!"); } org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array()); org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport); (new Client(prot)).recv_appendOutput(); } }
} catch (TProtocolException e) { try { iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.PROTOCOL_ERROR, e.getMessage()); TMemoryBuffer memoryBuffer = new TMemoryBuffer(512); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("setAcceptNewStream", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) { return Future.exception(e1); return Future.exception(e); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("setAcceptNewStream", TMessageType.REPLY, seqid)); result.write(oprot); oprot.writeMessageEnd();
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<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<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); } } });
private static HttpData encodeSuccess(ServiceRequestContext ctx, RpcResponse reply, SerializationFormat serializationFormat, String methodName, int seqId, TBase<?, ?> result) { final ByteBuf buf = ctx.alloc().buffer(128); boolean success = false; try { final TTransport transport = new TByteBufTransport(buf); final TProtocol outProto = ThriftProtocolFactories.get(serializationFormat).getProtocol(transport); final TMessage header = new TMessage(methodName, TMessageType.REPLY, seqId); outProto.writeMessageBegin(header); result.write(outProto); outProto.writeMessageEnd(); ctx.logBuilder().responseContent(reply, new ThriftReply(header, result)); final HttpData encoded = new ByteBufHttpData(buf, false); success = true; return encoded; } catch (TException e) { throw new Error(e); // Should never reach here. } finally { if (!success) { buf.release(); } } }
final TMemoryBuffer outTransport = new TMemoryBuffer(128); final TProtocol tProtocol = protocolFactory.getProtocol(outTransport); final TMessage header = new TMessage(fullMethod(ctx, method), func.messageType(), seqId); tProtocol.writeMessageBegin(header); @SuppressWarnings("rawtypes") final TBase tArgs = func.newArgs(args); tArgs.write(tProtocol); tProtocol.writeMessageEnd(); HttpHeaders.of(HttpMethod.POST, ctx.path()) .contentType(mediaType), HttpData.of(outTransport.getArray(), 0, outTransport.length()));
private static void transform(final AsyncLogWriter writer, LogRecordWithDLSN record, Transformer<byte[], byte[]> replicationTransformer, final CountDownLatch keepAliveLatch) throws Exception { DLSN srcDLSN = record.getDlsn(); byte[] payload = record.getPayload(); byte[] transformedPayload = replicationTransformer.transform(payload); TransformedRecord transformedRecord = new TransformedRecord(ByteBuffer.wrap(transformedPayload)); transformedRecord.setSrcDlsn(srcDLSN.serializeBytes()); ByteArrayOutputStream baos = new ByteArrayOutputStream(4096); transformedRecord.write(protocolFactory.getProtocol(new TIOStreamTransport(baos))); byte[] data = baos.toByteArray(); writer.write(new LogRecord(record.getSequenceId(), data)) .addEventListener(new FutureEventListener<DLSN>() { @Override public void onFailure(Throwable cause) { System.err.println("Encountered error on writing records to stream " + writer.getStreamName()); cause.printStackTrace(System.err); keepAliveLatch.countDown(); } @Override public void onSuccess(DLSN dlsn) { System.out.println("Write transformed record " + dlsn); } }); }
} catch (TProtocolException e) { try { iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.PROTOCOL_ERROR, e.getMessage()); TMemoryBuffer memoryBuffer = new TMemoryBuffer(512); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("heartbeat", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) { return Future.exception(e1); return Future.exception(e); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("heartbeat", TMessageType.REPLY, seqid)); result.write(oprot); oprot.writeMessageEnd();
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> 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); } } });
try { final TTransport transport = new TByteBufTransport(buf); final TProtocol outProto = ThriftProtocolFactories.get(serializationFormat).getProtocol(transport); final TMessage header = new TMessage(methodName, TMessageType.EXCEPTION, seqId); outProto.writeMessageBegin(header); appException.write(outProto); outProto.writeMessageEnd();
public void getResult() throws org.apache.thrift.TException { if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) { throw new IllegalStateException("Method call not finished!"); } org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array()); org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport); (new Client(prot)).recv_updateOutput(); } }
} catch (TProtocolException e) { try { iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.PROTOCOL_ERROR, e.getMessage()); TMemoryBuffer memoryBuffer = new TMemoryBuffer(512); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("write", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) { return Future.exception(e1); return Future.exception(e); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("write", TMessageType.REPLY, seqid)); result.write(oprot); oprot.writeMessageEnd();
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<WriteResponse> apply(byte[] __buffer__) { TMemoryInputTransport __memoryTransport__ = new TMemoryInputTransport(__buffer__); TProtocol __prot__ = ServiceToClient.this.protocolFactory.getProtocol(__memoryTransport__); try { return Future.value((new Client(__prot__)).recv_writeWithContext()); } catch (Exception e) { return Future.exception(e); } } });
public void getResult() throws org.apache.thrift.TException { if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) { throw new IllegalStateException("Method call not finished!"); } org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array()); org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport); (new Client(prot)).recv_appendAppOutput(); } }
} catch (TProtocolException e) { try { iprot.readMessageEnd(); TApplicationException x = new TApplicationException(TApplicationException.PROTOCOL_ERROR, e.getMessage()); TMemoryBuffer memoryBuffer = new TMemoryBuffer(512); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("writeBulkWithContext", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); byte[] buffer = Arrays.copyOfRange(memoryBuffer.getArray(), 0, memoryBuffer.length()); return Future.value(buffer); } catch (Exception e1) { return Future.exception(e1); return Future.exception(e); TProtocol oprot = protocolFactory.getProtocol(memoryBuffer); oprot.writeMessageBegin(new TMessage("writeBulkWithContext", TMessageType.REPLY, seqid)); result.write(oprot); oprot.writeMessageEnd();
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> 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); } } });