类io.grpc.ForwardingClientCallListener源码实例Demo

下面列出了怎么用io.grpc.ForwardingClientCallListener的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: quarkus   文件: MySecondClientInterceptor.java
@Override
public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(MethodDescriptor<ReqT, RespT> method,
        CallOptions callOptions, Channel next) {
    return new ForwardingClientCall.SimpleForwardingClientCall<ReqT, RespT>(next.newCall(method, callOptions)) {

        @Override
        public void start(Listener<RespT> responseListener, Metadata headers) {
            super.start(
                    new ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(responseListener) {

                        @Override
                        protected Listener<RespT> delegate() {
                            callTime = System.nanoTime();
                            return super.delegate();
                        }
                    }, headers);
        }
    };
}
 
源代码2 项目: quarkus   文件: MyFirstClientInterceptor.java
@Override
public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(MethodDescriptor<ReqT, RespT> method,
        CallOptions callOptions, Channel next) {
    return new ForwardingClientCall.SimpleForwardingClientCall<ReqT, RespT>(next.newCall(method, callOptions)) {

        @Override
        public void start(Listener<RespT> responseListener, Metadata headers) {
            super.start(
                    new ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(responseListener) {

                        @Override
                        protected Listener<RespT> delegate() {
                            callTime = System.nanoTime();
                            return super.delegate();
                        }
                    }, headers);
        }
    };
}
 
源代码3 项目: bazel   文件: LoggingInterceptor.java
@Override
public void start(Listener<RespT> responseListener, Metadata headers) {
  entryBuilder.setStartTime(getCurrentTimestamp());
  RequestMetadata metadata = TracingMetadataUtils.requestMetadataFromHeaders(headers);
  if (metadata != null) {
    entryBuilder.setMetadata(metadata);
  }
  super.start(
      new ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(
          responseListener) {
        @Override
        public void onMessage(RespT message) {
          handler.handleResp(message);
          super.onMessage(message);
        }

        @Override
        public void onClose(Status status, Metadata trailers) {
          entryBuilder.setEndTime(getCurrentTimestamp());
          entryBuilder.setStatus(makeStatusProto(status));
          entryBuilder.setDetails(handler.getDetails());
          rpcLogFile.write(entryBuilder.build());
          super.onClose(status, trailers);
        }
      },
      headers);
}
 
源代码4 项目: bazel   文件: NetworkTime.java
@Override
public void start(Listener<RespT> responseListener, Metadata headers) {
  super.start(
      new ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(
          responseListener) {

        @Override
        public void onClose(Status status, Metadata trailers) {
          networkTime.stop();
          super.onClose(status, trailers);
        }
      },
      headers);
}
 
 类所在包
 同包方法