@Target(value=METHOD) @Retention(value=SOURCE) public @interface KeyBehavior
业务方可感知的行为.
vs KeyFlow
:后者可以通过KeyFlow.actor()
修正绑定到某个业务对象,而KeyBehavior
只能标注到当前业务对象.
Example:
class ShipmentOrder {
℗KeyBehavior
void ship(Operator operator) {}
}
限定符和类型 | 可选元素和说明 |
---|---|
boolean |
abstracted
该行为是否是抽象行为,由子类实现.
|
String[] |
args
关键的入参.
|
boolean |
async
该行为执行过程是异步的.
|
String |
name
该属性名称在逆向建模时被修正为哪一个统一语言名称.
|
Class[] |
produceEvent
该行为会产生哪些领域事件.
|
String |
remark
补充说明.
|
boolean |
useRawArgs
是否拿方法签名的入参作为
args() . |
public abstract String name
如果不指定,则使用AST分析得到方法名称.
public abstract String remark
public abstract String[] args
虽然可以自动分析方法的入参,但这里提供了修正的机会.
public abstract boolean useRawArgs
args()
.public abstract Class[] produceEvent
Copyright © 2020–2023. All rights reserved.