pub trait SinkDefProvider:
Send
+ Sync
+ 'static {
// Required method
fn sink_def(&self) -> ConnectorDef;
// Provided method
fn validate_sink(&self, _def: &ConnectorDef) -> Result<(), String> { ... }
}Expand description
Trait for connectors that can act as a data sink.
Implement this trait to provide sink connector metadata and validation.
Used by [SinkFactory] to obtain connector definitions.
§Example
ⓘ
impl SinkDefProvider for MyConnector {
fn sink_def(&self) -> ConnectorDef {
ConnectorDef {
id: "my-sink".into(),
kind: "custom".into(),
scope: ConnectorScope::Sink,
allow_override: vec![],
default_params: Default::default(),
origin: None,
}
}
}Required Methods§
Sourcefn sink_def(&self) -> ConnectorDef
fn sink_def(&self) -> ConnectorDef
Returns the connector definition for sink mode.
Provided Methods§
Sourcefn validate_sink(&self, _def: &ConnectorDef) -> Result<(), String>
fn validate_sink(&self, _def: &ConnectorDef) -> Result<(), String>
Validates a sink connector definition.
Override to add custom validation logic. Returns Ok(()) by default.