Struct wasmcloud_core::link::InterfaceLinkDefinition
source · pub struct InterfaceLinkDefinition {
pub source_id: ComponentId,
pub target: LatticeTarget,
pub name: LinkName,
pub wit_namespace: WitNamespace,
pub wit_package: WitPackage,
pub interfaces: Vec<WitInterface>,
pub source_config: HashMap<String, String>,
pub target_config: HashMap<String, String>,
}Expand description
A link definition between a source and target component (actor or provider) on a given
interface. An InterfaceLinkDefinition connects one component’s import to another
component’s export, specifying the configuration each component needs in order to execute
the request, and represents an operator’s intent to allow the source to invoke the target.
Fields§
§source_id: ComponentIdSource identifier for the link
target: LatticeTargetTarget for the link, which can be a unique identifier or (future) a routing group
name: LinkNameName of the link. Not providing this is equivalent to specifying “default”
wit_namespace: WitNamespaceWIT namespace of the link operation, e.g. wasi in wasi:keyvalue/readwrite.get
wit_package: WitPackageWIT package of the link operation, e.g. keyvalue in wasi:keyvalue/readwrite.get
interfaces: Vec<WitInterface>WIT Interfaces to be used for the link, e.g. readwrite, atomic, etc.
source_config: HashMap<String, String>The configuration to give to the source for this link
target_config: HashMap<String, String>The configuration to give to the target for this link
Trait Implementations§
source§impl Clone for InterfaceLinkDefinition
impl Clone for InterfaceLinkDefinition
source§fn clone(&self) -> InterfaceLinkDefinition
fn clone(&self) -> InterfaceLinkDefinition
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for InterfaceLinkDefinition
impl Debug for InterfaceLinkDefinition
source§impl Default for InterfaceLinkDefinition
impl Default for InterfaceLinkDefinition
source§fn default() -> InterfaceLinkDefinition
fn default() -> InterfaceLinkDefinition
source§impl<'de> Deserialize<'de> for InterfaceLinkDefinition
impl<'de> Deserialize<'de> for InterfaceLinkDefinition
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl PartialEq for InterfaceLinkDefinition
impl PartialEq for InterfaceLinkDefinition
source§fn eq(&self, other: &InterfaceLinkDefinition) -> bool
fn eq(&self, other: &InterfaceLinkDefinition) -> bool
self and other values to be equal, and is used
by ==.source§impl Serialize for InterfaceLinkDefinition
impl Serialize for InterfaceLinkDefinition
impl Eq for InterfaceLinkDefinition
impl StructuralPartialEq for InterfaceLinkDefinition
Auto Trait Implementations§
impl Freeze for InterfaceLinkDefinition
impl RefUnwindSafe for InterfaceLinkDefinition
impl Send for InterfaceLinkDefinition
impl Sync for InterfaceLinkDefinition
impl Unpin for InterfaceLinkDefinition
impl UnwindSafe for InterfaceLinkDefinition
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.