如何在Plant UML序列图中自动激活和销毁?

9
在PlantUML中,为序列图添加激活线可能会非常混乱。有没有什么方法可以使其自动激活和停用,而不需要额外的文本呢?
例如:
生成没有激活线的序列图。
@startuml

First -> Second
Second -> Third
Third -> Second
Second ->  First

@enduml

enter image description here

但是添加激活行会变得非常混乱。

@startuml

First -> Second : message
activate First
activate Second
Second -> Third: message
activate Third
Third -> Second: response
deactivate Third
Second ->  First: response
deactivate First
deactivate Second

@enduml

输入图像说明

我想知道是否有可能自动检测可能的创建和销毁点。


我怀疑这在任何内置方式中都不可能。它没有办法知道活动周期应该何时结束。 - Lauri Peltonen
1个回答

16

Yes (2017)支持自动激活;语法仍在孵化阶段,但它已经是软件发布的一部分。

请注意,在所有情况下,由于没有传入消息,您仍需要手动激活第一个。

简洁语法

如果您想保持对(解)激活的控制,可以在同一行上使用++--符号来激活目标。

activate First
First -> Second ++ : message12
Second -> Third ++ : message23
Third -> Second -- : response32
Second ->  First -- : response21
deactivate First

输入图片描述

自动激活开启

使用您原始的描述,您将很快发现需要正确描述您的行作为返回,否则您将会不停地激活。

autoactivate on
activate First
First -> Second
Second -> Third
Third --> Second
Second --> First
deactivate First

在此输入图片描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接