Service Interfaces API Reference¶
All control plane service interfaces are in the io.patternops.core.service package.
PipelineDefinitionModel¶
public interface PipelineDefinitionModel {
ValidationResult<Pipeline> parse(String config);
ValidationResult<Pipeline> validate(Pipeline pipeline);
ResolutionResult resolveBindings(Pipeline pipeline, ProviderRegistry registry);
String print(Pipeline pipeline);
}
Implementation: io.patternops.core.DefaultPipelineDefinitionModel
ProviderRegistry¶
public interface ProviderRegistry {
RegistrationResult register(ProviderDescriptor descriptor);
DeactivationResult deactivate(String providerId);
BaseProviderContract resolve(String capability, TenancyContext context);
BaseProviderContract resolveSubCapability(String capability, String subCapability, TenancyContext context);
List<ProviderDescriptor> list(TenancyContext context);
HealthStatus healthCheck(String providerId);
}
EchoService¶
public interface EchoService {
StateTransitionResult transitionState(StateKey key, String targetState, String event);
PipelineState getState(StateKey key);
StateTransitionResult handleRestUpdate(StateUpdate update);
StateTransitionResult handleWebhookCallback(WebhookPayload payload);
StateTransitionResult handleEventBusMessage(PatternOpsEvent event);
void persistMetric(MetricsEnvelope envelope);
PaginatedResult<MetricsEnvelope> queryMetrics(MetricsFilter filter);
void persistLineage(LineageEvent event);
LineageGraph queryLineage(String dataset, LineageDirection direction);
void publishEvent(PatternOpsEvent event);
PaginatedResult<PatternOpsEvent> queryEvents(EventFilter filter);
void persistQualityResult(QualityResult result);
PaginatedResult<QualityResult> queryQuality(QualityFilter filter);
RecoveryMetadata getRecoveryMetadata(StateKey key);
String subscribe(WebhookSubscription subscription);
void unsubscribe(String subscriptionId);
DataContractVersion queryContract(String dataset);
List<DataContractVersion> queryContractHistory(String dataset);
}
PolicyEngine¶
public interface PolicyEngine {
List<PolicyDecision> evaluate(PipelineState state, List<MetricsEnvelope> metrics);
void registerPolicy(PolicyDefinition policy);
RetryDecision handleFailure(StageFailure failure);
ScalingAction handleScalingTrigger(ScalingTrigger trigger);
QualityAction handleQualityBreach(QualityBreach breach);
CatchUpPlan scheduleCatchUp(String pipeline, String fromDate, String toDate);
}
IntakeService¶
public interface IntakeService {
AcquisitionResult acquire(Pipeline pipeline, Stage stage);
void checkpoint(String executionId);
AcquisitionResult resume(String executionId, CheckpointState checkpoint);
}
PathwayService¶
public interface PathwayService {
TransformResult transform(Pipeline pipeline, Stage stage, DataReference input);
ExecutionStrategy resolveExecutionStrategy(Stage stage, ComputePlatformProfile profile);
}
MCPLayer¶
public interface MCPLayer {
MCPToolCatalog discover();
MCPResult invoke(String toolName, Map<String, Object> params, Identity identity);
SafetyClass getSafetyClass(String toolName);
}
DocumentationEngine¶
public interface DocumentationEngine {
DocumentationBundle generate(Pipeline pipeline, DocumentationContext context);
DocumentationBundle regenerate(Pipeline pipeline, List<String> changedSources);
DashboardBundle generateDashboards(ComputePlatformProfile profile);
}
IndependentStageExecutor¶
public interface IndependentStageExecutor {
StageExecutionResult executeStage(String pipeline, String stageName, DataReference input, ExecutionMode mode);
PartialExecutionResult executePartial(String pipeline, String fromStage, String toStage, DataReference input);
StageExecutionResult replayStage(String pipeline, String stageName, String runId);
}
BuildSystem¶
public interface BuildSystem {
DistributionArtifact compile(DistributionProfile profile);
ProfileValidationResult validateProfile(DistributionProfile profile);
DependencyGraph resolveDependencies(DistributionProfile profile);
DistributionArtifact incrementalCompile(List<String> changedModules, DistributionProfile profile);
}
MigrationAccelerator¶
public interface MigrationAccelerator {
DiscoveryResult scan(List<SignalSource> sources);
SampleResult sample(DiscoveredSource source, int sampleSize);
OperationalProfile parseLogs(List<LogSource> logSources);
List<GeneratedPipeline> generatePipelines(DiscoveryResult discovery);
MigrationAssessment assessMigration(DiscoveryResult discovery);
}
AgentPipelineConstructor¶
public interface AgentPipelineConstructor {
AnalysisResult analyse(List<InputSignal> signals);
GeneratedPipelinePresentation generate(AnalysisResult analysis);
GeneratedPipelinePresentation refine(GeneratedPipeline pipeline, UserFeedback feedback);
ValidationResult<Pipeline> validate(Pipeline pipeline);
}