pub struct DefinitionArtifact {
pub tenant: String,
pub workflow_owner: String,
pub workflow: String,
pub definition_version: u32,
pub steps: Vec<DefinitionStepArtifact>,
pub seal: String,
}Expand description
业务作用:承载 workflow owner 发布的完整、有序且带 seal 的流程合同。
Fields§
§tenant: String定义适用的租户域。
workflow_owner: String获授权发布完整流程的逻辑主体。
workflow: String稳定 workflow 名称。
definition_version: u32从一开始递增的不可变定义版本。
steps: Vec<DefinitionStepArtifact>按正向顺序排列的完整步骤集合。
seal: String发布者根据完整 definition 计算的 canonical 摘要。
Implementations§
Source§impl DefinitionArtifact
impl DefinitionArtifact
Sourcepub fn to_definition(&self) -> Result<WorkflowDefinition>
pub fn to_definition(&self) -> Result<WorkflowDefinition>
业务作用:转换为状态机 definition,并复验 seal 覆盖完整业务语义。
参数说明: 无。
返回:字段、流程不变量与 seal 全部成立时返回 definition;否则拒绝进入 Catalog。
Sourcepub fn from_definition(
tenant: impl Into<String>,
workflow_owner: impl Into<String>,
definition: &WorkflowDefinition,
) -> Self
pub fn from_definition( tenant: impl Into<String>, workflow_owner: impl Into<String>, definition: &WorkflowDefinition, ) -> Self
业务作用:从已校验 definition 生成可发布 artifact,确保 seal 与实际步骤合同同源。
参数说明:
tenant:是租户域workflow_owner:是发布主体definition:是完整流程。
返回:字段顺序稳定且 seal 已计算的 artifact。
Trait Implementations§
Source§impl Clone for DefinitionArtifact
impl Clone for DefinitionArtifact
Source§impl Debug for DefinitionArtifact
impl Debug for DefinitionArtifact
Source§impl<'de> Deserialize<'de> for DefinitionArtifact
impl<'de> Deserialize<'de> for DefinitionArtifact
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for DefinitionArtifact
Source§impl PartialEq for DefinitionArtifact
impl PartialEq for DefinitionArtifact
Source§impl Serialize for DefinitionArtifact
impl Serialize for DefinitionArtifact
impl StructuralPartialEq for DefinitionArtifact
Auto Trait Implementations§
impl Forget for DefinitionArtifact
impl Freeze for DefinitionArtifact
impl Move for DefinitionArtifact
impl RefUnwindSafe for DefinitionArtifact
impl Send for DefinitionArtifact
impl Sync for DefinitionArtifact
impl Unpin for DefinitionArtifact
impl UnsafeUnpin for DefinitionArtifact
impl UnwindSafe for DefinitionArtifact
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
Mutably borrows from an owned value. Read more