pub trait UOwnedTransport:
Sealed
+ Send
+ Sync {
// Required methods
fn send_owned<'life0, 'async_trait>(
&'life0 self,
frame: UOwnedFrame,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn receive_owned<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
) -> Pin<Box<dyn Future<Output = Result<UOwnedFrame, UStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn register_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn unregister_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
}Expand description
Experimental serialization-neutral owned native-frame transport API.
This API is additive to UTransport. It does not replace the ordinary
UMessage compatibility path and intentionally does not include copying
adapters between transport families.
Required Methods§
Sourcefn send_owned<'life0, 'async_trait>(
&'life0 self,
frame: UOwnedFrame,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_owned<'life0, 'async_trait>(
&'life0 self,
frame: UOwnedFrame,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sends an owned native frame after public validation.
Sourcefn receive_owned<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
) -> Pin<Box<dyn Future<Output = Result<UOwnedFrame, UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn receive_owned<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
) -> Pin<Box<dyn Future<Output = Result<UOwnedFrame, UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Receives one matching owned frame from transports that support pull receive.
Sourcefn register_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn register_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Registers a listener for matching owned native frames.
Sourcefn unregister_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn unregister_owned_listener<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
source_filter: &'life1 UUri,
sink_filter: Option<&'life2 UUri>,
listener: Arc<dyn UOwnedListener>,
) -> Pin<Box<dyn Future<Output = Result<(), UStatus>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Unregisters a listener for matching owned native frames.