Class SchemaServiceImpl

All Implemented Interfaces:
SchemaApiGrpc.AsyncService, io.grpc.BindableService

public class SchemaServiceImpl extends SchemaApiGrpc.SchemaApiImplBase
Uses a local Schema Service implementation to service remote Schema Service requests. For Deephaven Internal use only.
  • Method Details

    • make

      public static SchemaServiceImpl make(@NotNull @NotNull SchemaServiceAuthenticatedMutator schemaService, @NotNull @NotNull UnifiedServiceImpl unifiedService, @Nullable @Nullable IrisGroupProvider irisGroupProvider, @NotNull ConfigurationServer.ConfigurationAuditEventLogger ael)
      Factory: create an instance.
      Parameters:
      schemaService - initialize with this SchemaService
      unifiedService - initialize with this "parent" grpc service
      irisGroupProvider - use this group provider instead of making the default one
      ael - logger for audit events
      Returns:
      a new instance
    • about

      public String about()
    • about

      public void about(AboutRequest request, io.grpc.stub.StreamObserver<AboutReply> responseObserver)
      Description copied from interface: SchemaApiGrpc.AsyncService
       return a string with information about the server side context
       
    • authenticate

      public void authenticate(AuthRequest request, io.grpc.stub.StreamObserver<AuthReply> responseObserver)
      Verify the AuthToken presented. On the grpc-client, this token will be saved and presented with each call here. Cache the successful token to save validation time later.
      Parameters:
      request - authentication request, containing a valid AuthToken or request to clear the authentication
      responseObserver - the response observer (what more is there to say?)
    • listNamespaces

      public void listNamespaces(NamespaceSetRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.StringValue> responseObserver)
      Description copied from interface: SchemaApiGrpc.AsyncService
          rpc NamespaceSet getNamespaceSet(@NotNull String namespace) throws IllegalArgumentException;
       
    • listTableNames

      public void listTableNames(NamespaceRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.StringValue> responseObserver)
    • listAllTables

      public void listAllTables(ListAllTablesRequest request, io.grpc.stub.StreamObserver<TableNameReply> responseObserver)
    • getNamespaceSet

      public void getNamespaceSet(NamespaceRequest request, io.grpc.stub.StreamObserver<NamespaceSetReply> responseObserver)
    • putSchema

      public void putSchema(SchemaRequest request, io.grpc.stub.StreamObserver<SchemaReply> responseObserver)
      Description copied from interface: SchemaApiGrpc.AsyncService
       TODO: there's a choice to make - mimic the SchemaService API, or provide building blocks
       e.g. putSchema with SchemaRequest that differentiates between add and update
       
    • getSchema

      public void getSchema(SchemaRequest request, io.grpc.stub.StreamObserver<SchemaReply> responseObserver)
    • getSchemas

      public void getSchemas(SchemasRequest request, io.grpc.stub.StreamObserver<SchemaReply> responseObserver)
    • containsNamespace

      public void containsNamespace(NamespaceRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.BoolValue> responseObserver)
    • createNamespace

      public void createNamespace(NamespaceRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.BoolValue> responseObserver)
    • removeNamespace

      public void removeNamespace(NamespaceRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.BoolValue> responseObserver)
    • containsSchema

      public void containsSchema(SchemaRequest request, io.grpc.stub.StreamObserver<com.google.protobuf.BoolValue> responseObserver)
      Description copied from interface: SchemaApiGrpc.AsyncService
      rpc listSchemas(SchemasRequest) returns (stream StringReply) {}
       
    • getImportSources

      public void getImportSources(ImportSourcesRequest request, io.grpc.stub.StreamObserver<ImportSourcesResponse> responseObserver)