Class ServiceDiscoveryHandler

java.lang.Object
ai.pipestream.registration.handlers.ServiceDiscoveryHandler

@ApplicationScoped public class ServiceDiscoveryHandler extends Object
Handles service discovery and lookup operations.

Uses the standard Vert.x ConsulClient (async-only); each call is bridged to blocking via Future#toCompletionStage(). Callers run on virtual threads, so this never pins the event loop.

  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    ai.pipestream.platform.registration.v1.GetModuleResponse
    Get module by ID.
    ai.pipestream.platform.registration.v1.GetModuleResponse
    getModuleByName(String moduleName)
    Get module by name.
    ai.pipestream.platform.registration.v1.GetServiceResponse
    Get service by ID.
    ai.pipestream.platform.registration.v1.GetServiceResponse
    getServiceByName(String serviceName)
    Get service by name (returns first healthy instance).
    ai.pipestream.platform.registration.v1.ListPlatformModulesResponse
    List all modules.
    ai.pipestream.platform.registration.v1.ListServicesResponse
    List all services (non-modules).
    ai.pipestream.platform.registration.v1.ResolveServiceResponse
    resolveService(ai.pipestream.platform.registration.v1.ResolveServiceRequest request)
    Resolve service to find the best available instance.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ServiceDiscoveryHandler

      public ServiceDiscoveryHandler()
  • Method Details

    • listServices

      public ai.pipestream.platform.registration.v1.ListServicesResponse listServices()
      List all services (non-modules).
    • listModules

      public ai.pipestream.platform.registration.v1.ListPlatformModulesResponse listModules()
      List all modules.
    • getServiceByName

      public ai.pipestream.platform.registration.v1.GetServiceResponse getServiceByName(String serviceName)
      Get service by name (returns first healthy instance).
    • getServiceById

      public ai.pipestream.platform.registration.v1.GetServiceResponse getServiceById(String serviceId)
      Get service by ID.
    • getModuleByName

      public ai.pipestream.platform.registration.v1.GetModuleResponse getModuleByName(String moduleName)
      Get module by name.
    • getModuleById

      public ai.pipestream.platform.registration.v1.GetModuleResponse getModuleById(String moduleId)
      Get module by ID.
    • resolveService

      public ai.pipestream.platform.registration.v1.ResolveServiceResponse resolveService(ai.pipestream.platform.registration.v1.ResolveServiceRequest request)
      Resolve service to find the best available instance.