Annotation Interface GrpcServiceRegistration


@Target(TYPE) @Retention(RUNTIME) public @interface GrpcServiceRegistration
Annotation for automatic gRPC service registration with enhanced metadata support. This is specifically for application services (not pipeline modules).

Services annotated with this will be automatically registered with the registration service on startup, including rich metadata, capabilities, and SVG icons.

  • Element Details

    • serviceName

      String serviceName
      Service name for registration. Defaults to the class simple name.
      Default:
      ""
    • serviceType

      Service type - distinguishes applications from pipeline modules
      Default:
      APPLICATION
    • description

      String description
      Human-readable description of the service
      Default:
      ""
    • version

      String version
      Service version. Supports property placeholders like ${service.version:1.0.0}
      Default:
      "${service.version:1.0.0}"
    • iconPath

      String iconPath
      Path to SVG icon for UI display. Supports: - classpath:/icons/service.svg (bundled resource) - /absolute/path/to/icon.svg (file system) - https://cdn.example.com/icon.svg (URL) - data:image/svg+xml;base64,... (inline base64)
      Default:
      ""
    • capabilities

      String[] capabilities
      Service capabilities - what this service can do
      Default:
      {}
    • healthChecks

      Health check types to register
      Default:
      {HTTP, GRPC}
    • metadata

      String[] metadata
      Additional metadata as key=value pairs
      Default:
      {}
    • enabled

      String enabled
      Whether registration is enabled. Supports property placeholders.
      Default:
      "${service.registration.enabled:true}"
    • tags

      String[] tags
      Tags for service discovery
      Default:
      {}