Interface PlatformRegistrationServiceGrpc.AsyncService

All Known Implementing Classes:
PlatformRegistrationServiceGrpc.PlatformRegistrationServiceImplBase
Enclosing class:
PlatformRegistrationServiceGrpc

public static interface PlatformRegistrationServiceGrpc.AsyncService
 Unified registration service for all platform services and modules.
 Provides centralized service discovery via Consul with health monitoring,
 module schema management via Apicurio Registry, and real-time event streaming
 for registration lifecycle tracking.
 
  • Method Details

    • register

      default void register(RegisterRequest request, io.grpc.stub.StreamObserver<RegisterResponse> responseObserver)
       Register a service or module with streaming status updates.
       Returns a stream of RegistrationEvent messages tracking progress through
       validation, Consul registration, health check configuration, and completion.
       For modules, also includes schema validation and Apicurio registration.
       
    • unregister

      default void unregister(UnregisterRequest request, io.grpc.stub.StreamObserver<UnregisterResponse> responseObserver)
       Unregister a service or module from Consul and the platform registry.
       
    • listServices

      default void listServices(ListServicesRequest request, io.grpc.stub.StreamObserver<ListServicesResponse> responseObserver)
       List all registered services with health status and metadata.
       
    • listModules

      default void listModules(ListModulesRequest request, io.grpc.stub.StreamObserver<ListModulesResponse> responseObserver)
       List all registered modules with schema and capability information.
       
    • getService

      default void getService(GetServiceRequest request, io.grpc.stub.StreamObserver<GetServiceResponse> responseObserver)
       Get specific service details by name or Consul service ID.
       
    • getModule

      default void getModule(GetModuleRequest request, io.grpc.stub.StreamObserver<GetModuleResponse> responseObserver)
       Get specific module details by name or Consul service ID.
       
    • resolveService

      default void resolveService(ResolveServiceRequest request, io.grpc.stub.StreamObserver<ResolveServiceResponse> responseObserver)
       Resolve service endpoint for dynamic routing.
       Returns the best available instance of a service based on health and load.
       Supports preference criteria like local instances or required capabilities.
       
    • watchServices

      default void watchServices(WatchServicesRequest request, io.grpc.stub.StreamObserver<WatchServicesResponse> responseObserver)
       Watch for real-time updates to the list of all healthy services.
       The server will send an initial list, and then send a new full
       list whenever any service is registered, unregistered, or changes
       its health status.
       
    • watchModules

      default void watchModules(WatchModulesRequest request, io.grpc.stub.StreamObserver<WatchModulesResponse> responseObserver)
       Watch for real-time updates to the list of all registered modules.
       The server will send an initial list, and then send a new full
       list whenever any module is registered, unregistered, or changes
       its health status.
       
    • getModuleSchema

      default void getModuleSchema(GetModuleSchemaRequest request, io.grpc.stub.StreamObserver<GetModuleSchemaResponse> responseObserver)
       Get module schema from Apicurio Registry.
       Retrieves either a specific version or the latest schema for a module.
       Returns JSON Schema used for validating module configuration.
       
    • getModuleSchemaVersions

      default void getModuleSchemaVersions(GetModuleSchemaVersionsRequest request, io.grpc.stub.StreamObserver<GetModuleSchemaVersionsResponse> responseObserver)
       List all available schema versions for a module.
       Provides detailed version metadata from Apicurio Registry including
       creation timestamps and version-specific descriptions.