Class ConnectorValidationService
java.lang.Object
ai.pipeline.connector.intake.service.ConnectorValidationService
Service for validating connector API keys and fetching connector configuration.
This service provides the boundary between connector-intake-service and connector-service, ensuring proper microservice architecture without database coupling.
Uses dynamic-grpc with Stork service discovery to locate connector-service.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.smallrye.mutiny.Uni<ai.pipestream.connector.intake.ConnectorConfig> validateConnector(String connectorId, String apiKey) Validate a connector's API key and fetch its configuration.
-
Constructor Details
-
ConnectorValidationService
public ConnectorValidationService()
-
-
Method Details
-
validateConnector
public io.smallrye.mutiny.Uni<ai.pipestream.connector.intake.ConnectorConfig> validateConnector(String connectorId, String apiKey) Validate a connector's API key and fetch its configuration.Behavior:
- Discovers and calls connector-service to validate the API key and retrieve connector metadata.
- Then verifies the owning account exists and is active via account-service.
- Returns a
Uni<ConnectorConfig>that emits on completion of two remote gRPC calls. - Authentication failures are mapped to
io.grpc.StatusRuntimeExceptionwithUNAUTHENTICATED. - Missing or inactive accounts are mapped to
PERMISSION_DENIED.
- Parameters:
connectorId- The connector IDapiKey- The plaintext API key to validate- Returns:
- a
UniemittingConnectorConfigwhen validation succeeds
-