Search in sources :

Example 1 with DnsNameResolverProvider

use of io.grpc.internal.DnsNameResolverProvider in project incubator-skywalking by apache.

the class GRPCNoServerTest method main.

public static void main(String[] args) throws InterruptedException {
    ManagedChannelBuilder<?> channelBuilder = NettyChannelBuilder.forAddress("127.0.0.1", 8080).nameResolverFactory(new DnsNameResolverProvider()).maxInboundMessageSize(1024 * 1024 * 50).usePlaintext(true);
    ManagedChannel channel = channelBuilder.build();
    TraceSegmentServiceGrpc.TraceSegmentServiceStub serviceStub = TraceSegmentServiceGrpc.newStub(channel);
    final Status[] status = { null };
    StreamObserver<UpstreamSegment> streamObserver = serviceStub.collect(new StreamObserver<Downstream>() {

        @Override
        public void onNext(Downstream value) {
        }

        @Override
        public void onError(Throwable t) {
            status[0] = ((StatusRuntimeException) t).getStatus();
        }

        @Override
        public void onCompleted() {
        }
    });
    streamObserver.onNext(null);
    streamObserver.onCompleted();
    Thread.sleep(2 * 1000);
    Assert.assertEquals(status[0].getCode(), Status.UNAVAILABLE.getCode());
}
Also used : Status(io.grpc.Status) UpstreamSegment(org.apache.skywalking.apm.network.proto.UpstreamSegment) TraceSegmentServiceGrpc(org.apache.skywalking.apm.network.proto.TraceSegmentServiceGrpc) DnsNameResolverProvider(io.grpc.internal.DnsNameResolverProvider) StatusRuntimeException(io.grpc.StatusRuntimeException) ManagedChannel(io.grpc.ManagedChannel) Downstream(org.apache.skywalking.apm.network.proto.Downstream)

Aggregations

ManagedChannel (io.grpc.ManagedChannel)1 Status (io.grpc.Status)1 StatusRuntimeException (io.grpc.StatusRuntimeException)1 DnsNameResolverProvider (io.grpc.internal.DnsNameResolverProvider)1 Downstream (org.apache.skywalking.apm.network.proto.Downstream)1 TraceSegmentServiceGrpc (org.apache.skywalking.apm.network.proto.TraceSegmentServiceGrpc)1 UpstreamSegment (org.apache.skywalking.apm.network.proto.UpstreamSegment)1