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>,
pub source_secrets: Option<Vec<u8>>,
pub target_secrets: Option<Vec<u8>>,
}Expand description
A link definition between a source and target component (component 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
source_secrets: Option<Vec<u8>>The secrets to give to the source of this link
Should decrypt as a HashMap<String, SecretValue>
target_secrets: Option<Vec<u8>>The secrets to give to the target of this link
Should decrypt as a HashMap<String, SecretValue>
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 Serialize for InterfaceLinkDefinition
impl Serialize for InterfaceLinkDefinition
Source§impl Zeroize for InterfaceLinkDefinition
impl Zeroize for InterfaceLinkDefinition
impl ZeroizeOnDrop 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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
self file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more