pub struct OutputDeliveryPolicy {
pub policy_ref: PolicyRef,
pub requirement: OutputDeliveryRequirement,
pub default_content_mode: OutputContentMode,
pub allowed_content_modes: Vec<OutputContentMode>,
pub required_sink_ref: Option<OutputSinkRef>,
pub retry_policy_ref: Option<PolicyRef>,
pub reconciliation_policy_ref: Option<PolicyRef>,
pub raw_content_policy: RawOutputContentPolicy,
}Expand description
Carries the output delivery policy record payload for journal, event, or fixture surfaces. Creating or cloning it only preserves serialized SDK state; append, publish, replay, or export effects are documented on the runtime and port methods that store it.
Fields§
§policy_ref: PolicyRefPolicy reference that must be resolved by the host or runtime before execution.
requirement: OutputDeliveryRequirementRequirement used by this record or request.
default_content_mode: OutputContentModeDefault content mode used by this record or request.
allowed_content_modes: Vec<OutputContentMode>Allowlist for this policy or contract. Validation uses it to reject undeclared or policy-denied values.
required_sink_ref: Option<OutputSinkRef>Typed required sink ref reference. Resolving or executing it is a separate policy-gated step.
retry_policy_ref: Option<PolicyRef>Typed retry policy ref reference. Resolving or executing it is a separate policy-gated step.
reconciliation_policy_ref: Option<PolicyRef>Typed reconciliation policy ref reference. Resolving or executing it is a separate policy-gated step.
raw_content_policy: RawOutputContentPolicyRaw content or raw-content control for this value. Use it only when policy explicitly allows raw content capture or delivery.
Implementations§
Source§impl OutputDeliveryPolicy
impl OutputDeliveryPolicy
Sourcepub fn required(policy_ref: PolicyRef, sink_ref: OutputSinkRef) -> Self
pub fn required(policy_ref: PolicyRef, sink_ref: OutputSinkRef) -> Self
Returns an updated value with required configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn optional(policy_ref: PolicyRef) -> Self
pub fn optional(policy_ref: PolicyRef) -> Self
Returns an updated value with optional configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn disabled(policy_ref: PolicyRef) -> Self
pub fn disabled(policy_ref: PolicyRef) -> Self
Returns an updated value with disabled configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn allows_mode(&self, mode: OutputContentMode) -> bool
pub fn allows_mode(&self, mode: OutputContentMode) -> bool
Returns whether allows mode applies for this contract. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn policy_refs(&self) -> Vec<PolicyRef>
pub fn policy_refs(&self) -> Vec<PolicyRef>
Returns policy refs for callers that need to inspect the contract state. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Trait Implementations§
Source§impl Clone for OutputDeliveryPolicy
impl Clone for OutputDeliveryPolicy
Source§fn clone(&self) -> OutputDeliveryPolicy
fn clone(&self) -> OutputDeliveryPolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OutputDeliveryPolicy
impl Debug for OutputDeliveryPolicy
Source§impl<'de> Deserialize<'de> for OutputDeliveryPolicy
impl<'de> Deserialize<'de> for OutputDeliveryPolicy
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 OutputDeliveryPolicy
impl PartialEq for OutputDeliveryPolicy
Source§fn eq(&self, other: &OutputDeliveryPolicy) -> bool
fn eq(&self, other: &OutputDeliveryPolicy) -> bool
self and other values to be equal, and is used by ==.