pub struct CapabilityEndpointPlan { /* private fields */ }Expand description
Exact Capability endpoint metadata expected from one Module Instance.
Implementations§
Source§impl CapabilityEndpointPlan
impl CapabilityEndpointPlan
Sourcepub fn new(
capability_id: impl Into<String>,
descriptor_version: impl Into<String>,
operations: impl IntoIterator<Item = impl Into<String>>,
) -> Self
pub fn new( capability_id: impl Into<String>, descriptor_version: impl Into<String>, operations: impl IntoIterator<Item = impl Into<String>>, ) -> Self
Declares one exact Capability Descriptor and its stable Operation table.
Sourcepub fn with_admission(self, admission: RequestAdmissionPlan) -> Self
pub fn with_admission(self, admission: RequestAdmissionPlan) -> Self
Applies one bounded admission policy to every Operation on this endpoint.
Sourcepub fn with_limits(self, queue_capacity: usize, max_concurrency: usize) -> Self
pub fn with_limits(self, queue_capacity: usize, max_concurrency: usize) -> Self
Applies queue and concurrency limits to every Operation on this endpoint.
Sourcepub fn with_operation_kind(
self,
operation: impl Into<String>,
kind: CapabilityOperationKind,
) -> Self
pub fn with_operation_kind( self, operation: impl Into<String>, kind: CapabilityOperationKind, ) -> Self
Marks one declared Operation with its transport-independent interaction kind.
Sourcepub fn with_stream_operation(self, operation: impl Into<String>) -> Self
pub fn with_stream_operation(self, operation: impl Into<String>) -> Self
Marks one declared Operation as a bidirectional stream.
Sourcepub fn with_event_operation(self, operation: impl Into<String>) -> Self
pub fn with_event_operation(self, operation: impl Into<String>) -> Self
Marks one declared Operation as an ephemeral Event.
Sourcepub fn with_event_admission(self, admission: EventAdmissionPlan) -> Self
pub fn with_event_admission(self, admission: EventAdmissionPlan) -> Self
Applies one volatile mailbox policy to every Event Operation on this endpoint.
Sourcepub fn with_event_capacity(self, capacity: usize) -> Self
pub fn with_event_capacity(self, capacity: usize) -> Self
Applies one volatile mailbox capacity to every Event Operation on this endpoint.
Sourcepub const fn with_cross_lane_transfer(self) -> Self
pub const fn with_cross_lane_transfer(self) -> Self
Marks the generated Capability value types as safe for native cross-lane transfer.
Sourcepub fn with_operation_admission(
self,
operation: impl Into<String>,
admission: RequestAdmissionPlan,
) -> Self
pub fn with_operation_admission( self, operation: impl Into<String>, admission: RequestAdmissionPlan, ) -> Self
Applies one bounded admission policy to a named Operation.
Sourcepub fn with_operation_limits(
self,
operation: impl Into<String>,
queue_capacity: usize,
max_concurrency: usize,
) -> Self
pub fn with_operation_limits( self, operation: impl Into<String>, queue_capacity: usize, max_concurrency: usize, ) -> Self
Applies queue and concurrency limits to a named Operation.
Sourcepub fn capability_id(&self) -> &str
pub fn capability_id(&self) -> &str
Returns the Capability series identity.
Sourcepub fn descriptor_version(&self) -> &str
pub fn descriptor_version(&self) -> &str
Returns the exact Descriptor version.
Sourcepub fn operations(&self) -> &[String]
pub fn operations(&self) -> &[String]
Returns the exact stable Operation table.
Sourcepub fn operation_kind(&self, operation: &str) -> Option<CapabilityOperationKind>
pub fn operation_kind(&self, operation: &str) -> Option<CapabilityOperationKind>
Returns the interaction kind of one declared Operation.
Sourcepub fn stream_operations(&self) -> Vec<&str>
pub fn stream_operations(&self) -> Vec<&str>
Returns the declared stream Operation names in Descriptor order.
Sourcepub fn request_operations(&self) -> Vec<&str>
pub fn request_operations(&self) -> Vec<&str>
Returns the declared request Operation names in Descriptor order.
Sourcepub fn event_operations(&self) -> Vec<&str>
pub fn event_operations(&self) -> Vec<&str>
Returns the declared ephemeral Event Operation names in Descriptor order.
Sourcepub const fn event_admission(&self) -> Option<EventAdmissionPlan>
pub const fn event_admission(&self) -> Option<EventAdmissionPlan>
Returns the endpoint-wide Event mailbox policy, when one was authored.
Sourcepub const fn supports_cross_lane_transfer(&self) -> bool
pub const fn supports_cross_lane_transfer(&self) -> bool
Returns whether generated values may cross native Execution Lanes without serialization.
Sourcepub fn default_admission(&self) -> Option<RequestAdmissionPlan>
pub fn default_admission(&self) -> Option<RequestAdmissionPlan>
Returns the endpoint-wide admission policy, when one was authored.
Sourcepub fn operation_admissions(&self) -> &BTreeMap<String, RequestAdmissionPlan>
pub fn operation_admissions(&self) -> &BTreeMap<String, RequestAdmissionPlan>
Returns the Operation-specific admission policies.
Sourcepub fn operation_admission(
&self,
operation: &str,
) -> Option<RequestAdmissionPlan>
pub fn operation_admission( &self, operation: &str, ) -> Option<RequestAdmissionPlan>
Returns the effective policy for one Operation, if one was authored.
Trait Implementations§
Source§impl Clone for CapabilityEndpointPlan
impl Clone for CapabilityEndpointPlan
Source§fn clone(&self) -> CapabilityEndpointPlan
fn clone(&self) -> CapabilityEndpointPlan
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more