pub struct ComponentConfig { /* private fields */ }Expand description
An opaque component section: { <type_tag>: { ...connector config... } }.
The framework never interprets the body — it records which component
type the section selects (kafka, clickhouse, memory, …) and hands
the raw YAML to that component’s factory, which deserializes it into its
own typed config via deserialize_into.
The nested-block shape (exactly one key) is what lets every typed struct
in the tree keep deny_unknown_fields — a flattened shape would disable
that check.
Implementations§
Source§impl ComponentConfig
impl ComponentConfig
Sourcepub fn deserialize_into<T>(&self) -> Result<T, ConfigError>where
T: DeserializeOwned,
pub fn deserialize_into<T>(&self) -> Result<T, ConfigError>where
T: DeserializeOwned,
Deserialize the opaque body into the component’s typed config.
Errors carry the full dotted path from the pipeline config root,
e.g. source.kafka.brokers: missing field \brokers``.
Sourcepub fn new(type_tag: impl Into<String>, raw: Value) -> ComponentConfig
pub fn new(type_tag: impl Into<String>, raw: Value) -> ComponentConfig
Build a component config programmatically (primarily for tests and
etl-test pipelines that skip YAML).
raw is the opaque connector body as a YamlValue
(an etl-core re-export of serde_yaml::Value — see its docs for the
dependency-policy exemption).
Trait Implementations§
Source§impl Clone for ComponentConfig
impl Clone for ComponentConfig
Source§fn clone(&self) -> ComponentConfig
fn clone(&self) -> ComponentConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ComponentConfig
impl Debug for ComponentConfig
Source§impl<'de> Deserialize<'de> for ComponentConfig
impl<'de> Deserialize<'de> for ComponentConfig
Source§fn deserialize<D>(
deserializer: D,
) -> Result<ComponentConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<ComponentConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Source§impl PartialEq for ComponentConfig
impl PartialEq for ComponentConfig
Source§fn eq(&self, other: &ComponentConfig) -> bool
fn eq(&self, other: &ComponentConfig) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ComponentConfig
Auto Trait Implementations§
impl Freeze for ComponentConfig
impl RefUnwindSafe for ComponentConfig
impl Send for ComponentConfig
impl Sync for ComponentConfig
impl Unpin for ComponentConfig
impl UnsafeUnpin for ComponentConfig
impl UnwindSafe for ComponentConfig
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more