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<DataSourceConfig> validateDataSource(String datasourceId, String apiKey) Validate a datasource's API key and fetch its configuration.
-
Constructor Details
-
ConnectorValidationService
public ConnectorValidationService()Default constructor for CDI.
-
-
Method Details
-
validateDataSource
public io.smallrye.mutiny.Uni<DataSourceConfig> validateDataSource(String datasourceId, String apiKey) Validate a datasource's API key and fetch its configuration.Behavior:
- Discovers and calls datasource-admin to validate the API key and retrieve datasource config.
- Then verifies the owning account exists and is active via account-service.
- Returns a
Uni<DataSourceConfig>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:
datasourceId- The datasource IDapiKey- The plaintext API key to validate- Returns:
- a
UniemittingDataSourceConfigwhen validation succeeds
-