pub struct InterfaceLinkDefinition {
pub source_id: String,
pub target: String,
pub name: String,
pub wit_namespace: String,
pub wit_package: String,
pub interfaces: Vec<String>,
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
Re-export of types from wasmcloud_core
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: String
Source identifier for the link
target: String
Target for the link, which can be a unique identifier or (future) a routing group
name: String
Name of the link. Not providing this is equivalent to specifying “default”
wit_namespace: String
WIT namespace of the link operation, e.g. wasi
in wasi:keyvalue/readwrite.get
wit_package: String
WIT package of the link operation, e.g. keyvalue
in wasi:keyvalue/readwrite.get
interfaces: Vec<String>
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<InterfaceLinkDefinition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<InterfaceLinkDefinition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl LinkDeleteInfo for &InterfaceLinkDefinition
impl LinkDeleteInfo for &InterfaceLinkDefinition
source§fn get_source_id(&self) -> &str
fn get_source_id(&self) -> &str
source§fn get_target_id(&self) -> &str
fn get_target_id(&self) -> &str
source§fn get_link_name(&self) -> &str
fn get_link_name(&self) -> &str
source§impl Serialize for InterfaceLinkDefinition
impl Serialize for InterfaceLinkDefinition
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request