Manifest 格式
服务的 Manifest 是一份 JSON 文档(format 1):它的限界上下文、上下文中的聚合及其命令与事件、订阅、框架的错误码,以及 $defs 之下每个载荷的 JSON Schema 2020-12。模块的片段(META-INF/wow/manifest/<module>.json)形状相同,只是没有 service。下面每个对象及其键的提纲,由写出它的代码 ManifestTree 生成;说明取自源码,为英文。
写出时省略的内容:
Absent optional values (a null description, unknown produces, derives, schedules or transformsTo, a fragment's service, a subscription's retry or job) are left out, not written as null, and so are a subscription source's nullableState and a command's mounted when false, an aggregate's ownership when it is OWNER, the default, and its retired events when it has none.
Manifest
Context
namedescriptionaggregates: 数组,元素为Aggregatesubscriptions: 数组,元素为Subscriptionpublished: 对象数组aggregatetopicincludeState
errors: 数组,元素为Error
Error
codestatusdescription
Aggregate
namedescriptionstate: 对象schemafingerprint
snapshot: 对象enabledstateRevision: 缺省或取默认值时省略
commands: 对象数组namealiasesschemacreationproducesroutes: 数组,元素为Routemounted: 缺省或取默认值时省略transformsTodescription
events: 对象数组namealiasesrevisionschemadescription
lifecyclequeries: 对象数组modelroutes: 数组,元素为Route
schedulesownership: 缺省或取默认值时省略retired: 缺省或取默认值时省略
Route
methodpath
Subscription
namekindsource: 对象contextaggregateseventsnullableState: 缺省或取默认值时省略
function: 对象kindcontextprocessorname
derivesrejectedcommittedcallsstart: 缺省或取默认值时省略schedulesretry: 对象; 缺省或取默认值时省略maxAttemptsinitialBackoffmaxBackofftimeoutrecoverableunrecoverable
job: 对象; 缺省或取默认值时省略namecronzonescopeshardedmisfire