io.grpc.reflection.v1alpha.ServerReflectionResponse Java Examples
The following examples show how to use
io.grpc.reflection.v1alpha.ServerReflectionResponse.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 6 votes |
@Test public void testRetrievingFilesContainingNestedExtension() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setFileContainingExtension( ExtensionRequest.newBuilder() .setContainingType("grpc.reflection.testing.ThirdLevelType") .setExtensionNumber(101) .build()) .build(); ServerReflectionResponse expected = ServerReflectionResponse.newBuilder() .setValidHost("localhost") .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString()) .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); ServerReflectionResponse response = invoke(request); assertThat(response).isEqualTo(expected); }
Example #2
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 6 votes |
private ServerReflectionResponse getServerReflectionResponse( ServerReflectionRequest request, FileDescriptor fd) { FileDescriptorResponse.Builder fdRBuilder = FileDescriptorResponse.newBuilder(); // Traverse the descriptors to get the full list of dependencies and add them to the builder Set<String> seenFiles = new HashSet<>(); Queue<FileDescriptor> frontier = new ArrayDeque<>(); seenFiles.add(fd.getName()); frontier.add(fd); while (!frontier.isEmpty()) { FileDescriptor nextFd = frontier.remove(); fdRBuilder.addFileDescriptorProto(nextFd.toProto().toByteString()); for (FileDescriptor dependencyFd : nextFd.getDependencies()) { if (!seenFiles.contains(dependencyFd.getName())) { seenFiles.add(dependencyFd.getName()); frontier.add(dependencyFd); } } } return ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setFileDescriptorResponse(fdRBuilder) .build(); }
Example #3
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 6 votes |
private ServerReflectionResponse getAllExtensions(ServerReflectionRequest request) { String type = request.getAllExtensionNumbersOfType(); Set<Integer> extensions = index.getExtensionNumbersOfType(type); if (extensions != null) { ExtensionNumberResponse.Builder builder = ExtensionNumberResponse.newBuilder() .setBaseTypeName(type) .addAllExtensionNumber(extensions); return ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setAllExtensionNumbersResponse(builder) .build(); } else { return getErrorResponse(request, Status.Code.NOT_FOUND, "Type not found."); } }
Example #4
Source File: ProtoReflectionService.java From grpc-java with Apache License 2.0 | 6 votes |
private void getAllExtensions(ServerReflectionRequest request) { String type = request.getAllExtensionNumbersOfType(); Set<Integer> extensions = serverReflectionIndex.getExtensionNumbersOfType(type); if (extensions != null) { ExtensionNumberResponse.Builder builder = ExtensionNumberResponse.newBuilder() .setBaseTypeName(type) .addAllExtensionNumber(extensions); serverCallStreamObserver.onNext( ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setAllExtensionNumbersResponse(builder) .build()); } else { sendErrorResponse(request, Status.Code.NOT_FOUND, "Type not found."); } }
Example #5
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 6 votes |
@Test public void testRetrievingFilesByFileName() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setFileByFilename("reflection/reflection_test_depth_three.proto") .build(); ServerReflectionResponse expected = ServerReflectionResponse.newBuilder() .setValidHost("localhost") .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); ServerReflectionResponse response = invoke(request); assertThat(response).isEqualTo(expected); }
Example #6
Source File: ProtoReflectionServiceTest.java From grpc-nebula-java with Apache License 2.0 | 6 votes |
@Test public void allExtensionNumbersOfType() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setAllExtensionNumbersOfType("grpc.reflection.testing.ThirdLevelType") .build(); Set<Integer> goldenResponse = new HashSet<Integer>(Arrays.asList(100, 101)); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); Set<Integer> extensionNumberResponseSet = new HashSet<Integer>( responseObserver .firstValue() .get() .getAllExtensionNumbersResponse() .getExtensionNumberList()); assertEquals(goldenResponse, extensionNumberResponseSet); }
Example #7
Source File: ProtoReflectionService.java From grpc-java with Apache License 2.0 | 6 votes |
private ServerReflectionResponse createServerReflectionResponse( ServerReflectionRequest request, FileDescriptor fd) { FileDescriptorResponse.Builder fdRBuilder = FileDescriptorResponse.newBuilder(); Set<String> seenFiles = new HashSet<>(); Queue<FileDescriptor> frontier = new ArrayDeque<>(); seenFiles.add(fd.getName()); frontier.add(fd); while (!frontier.isEmpty()) { FileDescriptor nextFd = frontier.remove(); fdRBuilder.addFileDescriptorProto(nextFd.toProto().toByteString()); for (FileDescriptor dependencyFd : nextFd.getDependencies()) { if (!seenFiles.contains(dependencyFd.getName())) { seenFiles.add(dependencyFd.getName()); frontier.add(dependencyFd); } } } return ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setFileDescriptorResponse(fdRBuilder) .build(); }
Example #8
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 6 votes |
@Override public Multi<ServerReflectionResponse> serverReflectionInfo(Multi<ServerReflectionRequest> request) { return request .onItem().apply(new Function<ServerReflectionRequest, ServerReflectionResponse>() { @Override public ServerReflectionResponse apply(ServerReflectionRequest req) { switch (req.getMessageRequestCase()) { case LIST_SERVICES: return ReflectionService.this.getServiceList(req); case FILE_BY_FILENAME: return ReflectionService.this.getFileByName(req); case FILE_CONTAINING_SYMBOL: return ReflectionService.this.getFileContainingSymbol(req); case FILE_CONTAINING_EXTENSION: return ReflectionService.this.getFileByExtension(req); case ALL_EXTENSION_NUMBERS_OF_TYPE: return ReflectionService.this.getAllExtensions(req); default: return ReflectionService.this.getErrorResponse(req, Status.Code.UNIMPLEMENTED, "not implemented " + req.getMessageRequestCase()); } } }); }
Example #9
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 6 votes |
@Test public void testRetrievingFilesContainingSymbol() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setFileContainingSymbol("grpc.reflection.testing.ReflectableService.Method") .build(); List<ByteString> responses = Arrays.asList( ReflectionTestProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()); ServerReflectionResponse response = invoke(request); List<ByteString> list = response.getFileDescriptorResponse().getFileDescriptorProtoList(); assertThat(list).containsExactlyInAnyOrderElementsOf(responses); }
Example #10
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 6 votes |
@Test public void fileContainingNestedSymbol() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileContainingSymbol("grpc.reflection.testing.NestedTypeOuter.Middle.Inner") .build(); ServerReflectionResponse goldenResponse = ServerReflectionResponse.newBuilder() .setValidHost(TEST_HOST) .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); assertEquals(goldenResponse, responseObserver.firstValue().get()); }
Example #11
Source File: ProtoReflectionServiceTest.java From grpc-nebula-java with Apache License 2.0 | 6 votes |
@Test public void fileContainingNestedSymbol() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileContainingSymbol("grpc.reflection.testing.NestedTypeOuter.Middle.Inner") .build(); ServerReflectionResponse goldenResponse = ServerReflectionResponse.newBuilder() .setValidHost(TEST_HOST) .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); assertEquals(goldenResponse, responseObserver.firstValue().get()); }
Example #12
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 6 votes |
@Test public void testRetrievingFilesContainingNestedSymbol() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setFileContainingSymbol("grpc.reflection.testing.NestedTypeOuter.Middle.Inner") .build(); ServerReflectionResponse expected = ServerReflectionResponse.newBuilder() .setValidHost("localhost") .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); ServerReflectionResponse resp = invoke(request); assertThat(resp).isEqualTo(expected); }
Example #13
Source File: ProtoReflectionService.java From grpc-nebula-java with Apache License 2.0 | 6 votes |
private ServerReflectionResponse createServerReflectionResponse( ServerReflectionRequest request, FileDescriptor fd) { FileDescriptorResponse.Builder fdRBuilder = FileDescriptorResponse.newBuilder(); Set<String> seenFiles = new HashSet<String>(); Queue<FileDescriptor> frontier = new ArrayDeque<FileDescriptor>(); seenFiles.add(fd.getName()); frontier.add(fd); while (!frontier.isEmpty()) { FileDescriptor nextFd = frontier.remove(); fdRBuilder.addFileDescriptorProto(nextFd.toProto().toByteString()); for (FileDescriptor dependencyFd : nextFd.getDependencies()) { if (!seenFiles.contains(dependencyFd.getName())) { seenFiles.add(dependencyFd.getName()); frontier.add(dependencyFd); } } } return ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setFileDescriptorResponse(fdRBuilder) .build(); }
Example #14
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 6 votes |
@Test public void allExtensionNumbersOfType() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setAllExtensionNumbersOfType("grpc.reflection.testing.ThirdLevelType") .build(); Set<Integer> goldenResponse = new HashSet<>(Arrays.asList(100, 101)); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); Set<Integer> extensionNumberResponseSet = new HashSet<>( responseObserver .firstValue() .get() .getAllExtensionNumbersResponse() .getExtensionNumberList()); assertEquals(goldenResponse, extensionNumberResponseSet); }
Example #15
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 6 votes |
@Test public void testRetrievingFilesContainingExtension() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setFileContainingExtension( ExtensionRequest.newBuilder() .setContainingType("grpc.reflection.testing.ThirdLevelType") .setExtensionNumber(100) .build()) .build(); List<ByteString> expected = Arrays.asList( ReflectionTestProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()); ServerReflectionResponse response = invoke(request); assertThat(response.getFileDescriptorResponse().getFileDescriptorProtoList()) .containsExactlyInAnyOrderElementsOf(expected); }
Example #16
Source File: ProtoReflectionService.java From grpc-nebula-java with Apache License 2.0 | 6 votes |
private void getAllExtensions(ServerReflectionRequest request) { String type = request.getAllExtensionNumbersOfType(); Set<Integer> extensions = serverReflectionIndex.getExtensionNumbersOfType(type); if (extensions != null) { ExtensionNumberResponse.Builder builder = ExtensionNumberResponse.newBuilder() .setBaseTypeName(type) .addAllExtensionNumber(extensions); serverCallStreamObserver.onNext( ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setAllExtensionNumbersResponse(builder) .build()); } else { sendErrorResponse(request, Status.Code.NOT_FOUND, "Type not found."); } }
Example #17
Source File: DemoAppTest.java From grpc-spring-boot-starter with Apache License 2.0 | 5 votes |
@Test public void testReflection() throws InterruptedException { List<String> discoveredServiceNames = new ArrayList<>(); ServerReflectionRequest request = ServerReflectionRequest.newBuilder().setListServices("services").setHost("localhost").build(); CountDownLatch latch = new CountDownLatch(1); ServerReflectionGrpc.newStub(channel).serverReflectionInfo(new StreamObserver<ServerReflectionResponse>() { @Override public void onNext(ServerReflectionResponse value) { List<ServiceResponse> serviceList = value.getListServicesResponse().getServiceList(); for (ServiceResponse serviceResponse : serviceList) { discoveredServiceNames.add(serviceResponse.getName()); } } @Override public void onError(Throwable t) { } @Override public void onCompleted() { latch.countDown(); } }).onNext(request); latch.await(3, TimeUnit.SECONDS); assertFalse(discoveredServiceNames.isEmpty()); }
Example #18
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
private void assertServiceResponseEquals(Set<ServiceResponse> goldenResponse) throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder().setHost(TEST_HOST).setListServices("services").build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); List<ServiceResponse> response = responseObserver.firstValue().get().getListServicesResponse().getServiceList(); assertEquals(goldenResponse.size(), response.size()); assertEquals(goldenResponse, new HashSet<>(response)); }
Example #19
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
@Test public void fileContainingSymbol() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileContainingSymbol("grpc.reflection.testing.ReflectableService.Method") .build(); List<ByteString> goldenResponse = Arrays.asList( ReflectionTestProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoAlternateProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); List<ByteString> response = responseObserver .firstValue() .get() .getFileDescriptorResponse() .getFileDescriptorProtoList(); assertEquals(goldenResponse.size(), response.size()); assertEquals(new HashSet<>(goldenResponse), new HashSet<>(response)); }
Example #20
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
@Test public void fileContainingExtension() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileContainingExtension( ExtensionRequest.newBuilder() .setContainingType("grpc.reflection.testing.ThirdLevelType") .setExtensionNumber(100) .build()) .build(); List<ByteString> goldenResponse = Arrays.asList( ReflectionTestProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthTwoAlternateProto.getDescriptor().toProto().toByteString(), ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); List<ByteString> response = responseObserver .firstValue() .get() .getFileDescriptorResponse() .getFileDescriptorProtoList(); assertEquals(goldenResponse.size(), response.size()); assertEquals(new HashSet<>(goldenResponse), new HashSet<>(response)); }
Example #21
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
@Test public void fileContainingNestedExtension() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileContainingExtension( ExtensionRequest.newBuilder() .setContainingType("grpc.reflection.testing.ThirdLevelType") .setExtensionNumber(101) .build()) .build(); ServerReflectionResponse goldenResponse = ServerReflectionResponse.newBuilder() .setValidHost(TEST_HOST) .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthTwoProto.getDescriptor().toProto().toByteString()) .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); assertEquals(goldenResponse, responseObserver.firstValue().get()); }
Example #22
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
@Test public void sharedServiceBetweenServers() throws IOException, ExecutionException, InterruptedException { Server anotherServer = InProcessServerBuilder.forName("proto-reflection-test-2") .directExecutor() .addService(reflectionService) .addService(new AnotherReflectableServiceGrpc.AnotherReflectableServiceImplBase() {}) .build() .start(); grpcCleanupRule.register(anotherServer); ManagedChannel anotherChannel = grpcCleanupRule.register( InProcessChannelBuilder.forName("proto-reflection-test-2").directExecutor().build()); ServerReflectionGrpc.ServerReflectionStub stub2 = ServerReflectionGrpc.newStub(anotherChannel); ServerReflectionRequest request = ServerReflectionRequest.newBuilder().setHost(TEST_HOST).setListServices("services").build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub2.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); List<ServiceResponse> response = responseObserver.firstValue().get().getListServicesResponse().getServiceList(); assertEquals(new HashSet<>( Arrays.asList( ServiceResponse.newBuilder() .setName("grpc.reflection.v1alpha.ServerReflection") .build(), ServiceResponse.newBuilder() .setName("grpc.reflection.testing.AnotherReflectableService") .build())), new HashSet<>(response)); }
Example #23
Source File: ProtoReflectionService.java From grpc-nebula-java with Apache License 2.0 | 5 votes |
@Override public StreamObserver<ServerReflectionRequest> serverReflectionInfo( final StreamObserver<ServerReflectionResponse> responseObserver) { final ServerCallStreamObserver<ServerReflectionResponse> serverCallStreamObserver = (ServerCallStreamObserver<ServerReflectionResponse>) responseObserver; ProtoReflectionStreamObserver requestObserver = new ProtoReflectionStreamObserver(updateIndexIfNecessary(), serverCallStreamObserver); serverCallStreamObserver.setOnReadyHandler(requestObserver); serverCallStreamObserver.disableAutoInboundFlowControl(); serverCallStreamObserver.request(1); return requestObserver; }
Example #24
Source File: ProtoReflectionServiceTest.java From grpc-java with Apache License 2.0 | 5 votes |
@Test public void fileByFilename() throws Exception { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost(TEST_HOST) .setFileByFilename("io/grpc/reflection/testing/reflection_test_depth_three.proto") .build(); ServerReflectionResponse goldenResponse = ServerReflectionResponse.newBuilder() .setValidHost(TEST_HOST) .setOriginalRequest(request) .setFileDescriptorResponse( FileDescriptorResponse.newBuilder() .addFileDescriptorProto( ReflectionTestDepthThreeProto.getDescriptor().toProto().toByteString()) .build()) .build(); StreamRecorder<ServerReflectionResponse> responseObserver = StreamRecorder.create(); StreamObserver<ServerReflectionRequest> requestObserver = stub.serverReflectionInfo(responseObserver); requestObserver.onNext(request); requestObserver.onCompleted(); assertEquals(goldenResponse, responseObserver.firstValue().get()); }
Example #25
Source File: ProtoReflectionService.java From grpc-java with Apache License 2.0 | 5 votes |
@Override public StreamObserver<ServerReflectionRequest> serverReflectionInfo( final StreamObserver<ServerReflectionResponse> responseObserver) { final ServerCallStreamObserver<ServerReflectionResponse> serverCallStreamObserver = (ServerCallStreamObserver<ServerReflectionResponse>) responseObserver; ProtoReflectionStreamObserver requestObserver = new ProtoReflectionStreamObserver(getRefreshedIndex(), serverCallStreamObserver); serverCallStreamObserver.setOnReadyHandler(requestObserver); serverCallStreamObserver.disableAutoRequest(); serverCallStreamObserver.request(1); return requestObserver; }
Example #26
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 5 votes |
private ServerReflectionResponse getFileByExtension(ServerReflectionRequest request) { ExtensionRequest extensionRequest = request.getFileContainingExtension(); String type = extensionRequest.getContainingType(); int extension = extensionRequest.getExtensionNumber(); FileDescriptor fd = index.getFileDescriptorByExtensionAndNumber(type, extension); if (fd != null) { return getServerReflectionResponse(request, fd); } else { return getErrorResponse(request, Status.Code.NOT_FOUND, "Extension not found (" + type + ", " + extension + ")"); } }
Example #27
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 5 votes |
private ServerReflectionResponse getFileContainingSymbol(ServerReflectionRequest request) { String symbol = request.getFileContainingSymbol(); FileDescriptor fd = index.getFileDescriptorBySymbol(symbol); if (fd != null) { return getServerReflectionResponse(request, fd); } else { return getErrorResponse(request, Status.Code.NOT_FOUND, "Symbol not found (" + symbol + ")"); } }
Example #28
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 5 votes |
private ServerReflectionResponse getFileByName(ServerReflectionRequest request) { String name = request.getFileByFilename(); FileDescriptor fd = index.getFileDescriptorByName(name); if (fd != null) { return getServerReflectionResponse(request, fd); } else { return getErrorResponse(request, Status.Code.NOT_FOUND, "File not found (" + name + ")"); } }
Example #29
Source File: ReflectionService.java From quarkus with Apache License 2.0 | 5 votes |
private ServerReflectionResponse getServiceList(ServerReflectionRequest request) { ListServiceResponse response = index.getServiceNames().stream() .map(new Function<String, ServiceResponse>() { // NOSONAR @Override public ServiceResponse apply(String s) { return ServiceResponse.newBuilder().setName(s).build(); } }) .collect(new Supplier<ListServiceResponse.Builder>() { @Override public ListServiceResponse.Builder get() { return ListServiceResponse.newBuilder(); } }, new BiConsumer<ListServiceResponse.Builder, ServiceResponse>() { @Override public void accept(ListServiceResponse.Builder builder, ServiceResponse value) { builder.addService(value); } }, new BiConsumer<ListServiceResponse.Builder, ListServiceResponse.Builder>() { // NOSONAR @Override public void accept(ListServiceResponse.Builder b1, ListServiceResponse.Builder b2) { b1.addAllService(b2.getServiceList()); } }) .build(); return ServerReflectionResponse.newBuilder() .setValidHost(request.getHost()) .setOriginalRequest(request) .setListServicesResponse(response) .build(); }
Example #30
Source File: GrpcReflectionTest.java From quarkus with Apache License 2.0 | 5 votes |
@Test public void testRetrievingAllExtensionNumbersOfType() { ServerReflectionRequest request = ServerReflectionRequest.newBuilder() .setHost("localhost") .setAllExtensionNumbersOfType("grpc.reflection.testing.ThirdLevelType") .build(); List<Integer> expected = Arrays.asList(100, 101); ServerReflectionResponse response = invoke(request); List<Integer> list = response.getAllExtensionNumbersResponse().getExtensionNumberList(); assertThat(list).containsExactlyInAnyOrderElementsOf(expected); }