From 8670937792f8b97275ca896a33a3690d45bd105e Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Wed, 7 Jul 2021 12:41:43 +0200 Subject: [PATCH] WIP: retrieve simple entity --- caosdb-proto | 2 +- pom.xml | 2 +- .../grpc/EntityTransactionServiceImpl.java | 20 +++++++++++++++++++ .../org/caosdb/server/grpc/GRPCServer.java | 10 ++++++---- 4 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java diff --git a/caosdb-proto b/caosdb-proto index b0cade5e..dd9abe34 160000 --- a/caosdb-proto +++ b/caosdb-proto @@ -1 +1 @@ -Subproject commit b0cade5e02daff99eaa46e1201f2786ac873114b +Subproject commit dd9abe3499367c4eded4774ade1acbc90ef048b3 diff --git a/pom.xml b/pom.xml index 67c013de..c36df3ae 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.caosdb</groupId> <artifactId>caosdb-server</artifactId> - <version>0.5.0-GRPC003</version> + <version>0.5.0-GRPC004</version> <packaging>jar</packaging> <name>CaosDB Server</name> <scm> diff --git a/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java b/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java new file mode 100644 index 00000000..1ca75f9c --- /dev/null +++ b/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java @@ -0,0 +1,20 @@ +package org.caosdb.server.grpc; + +import io.grpc.stub.StreamObserver; +import org.caosdb.api.entity.v1alpha1.Entity; +import org.caosdb.api.entity.v1alpha1.EntityTransactionServiceGrpc.EntityTransactionServiceImplBase; +import org.caosdb.api.entity.v1alpha1.RetrieveRequest; +import org.caosdb.api.entity.v1alpha1.RetrieveResponse; + +public class EntityTransactionServiceImpl extends EntityTransactionServiceImplBase { + + @Override + public void retrieve( + final RetrieveRequest request, final StreamObserver<RetrieveResponse> responseObserver) { + final Entity entity = Entity.newBuilder().setDescription("This is an entity").build(); + final RetrieveResponse response = RetrieveResponse.newBuilder().setEntity(entity).build(); + + responseObserver.onNext(response); + responseObserver.onCompleted(); + } +} diff --git a/src/main/java/org/caosdb/server/grpc/GRPCServer.java b/src/main/java/org/caosdb/server/grpc/GRPCServer.java index 9d1b4c6a..0fd6da78 100644 --- a/src/main/java/org/caosdb/server/grpc/GRPCServer.java +++ b/src/main/java/org/caosdb/server/grpc/GRPCServer.java @@ -114,10 +114,12 @@ public class GRPCServer { private List<ServerServiceDefinition> getEnabledServices() { final List<ServerServiceDefinition> services = new LinkedList<>(); - final GeneralInfoServiceImpl gIS = new GeneralInfoServiceImpl(); - final ServerServiceDefinition serviceDefinition = - ServerInterceptors.intercept(gIS, authInterceptor); - services.add(serviceDefinition); + final GeneralInfoServiceImpl generalInfoService = new GeneralInfoServiceImpl(); + services.add(ServerInterceptors.intercept(generalInfoService, authInterceptor)); + + final EntityTransactionServiceImpl entityTransactionService = + new EntityTransactionServiceImpl(); + services.add(ServerInterceptors.intercept(entityTransactionService, authInterceptor)); return services; } -- GitLab