ContextManifest
class ContextManifest @InternalWowApi constructor(val name: String, val description: String? = null, val aggregates: List<AggregateManifest> = emptyList(), val subscriptions: List<SubscriptionManifest> = emptyList(), val published: List<PublishedManifest> = emptyList(), val errors: List<ErrorManifest> = emptyList(), val commands: List<CommandManifest> = emptyList(), val routes: List<ServiceRouteManifest> = emptyList())
A bounded context. errors optionally documents the domain's rejection codes, the @ErrorCode constants of its module; they are runtime strings, so the list is neither complete nor checked against what the code rejects with, and a wow.* code is not the context's.
commands are the context's own system commands, which no aggregate of it names: the commands of its schedule jobs (wow.schedule.Enable, ...), when a subscription of it runs a job. An aggregate's system commands are among its own AggregateManifest.commands. routes are its service routes: routes whose handler is the service's own code, neither a command nor a query.
Fields may be added: pass the constructor's arguments by name.
Constructors
Link copied to clipboard
constructor(name: String, description: String? = null, aggregates: List<AggregateManifest> = emptyList(), subscriptions: List<SubscriptionManifest> = emptyList(), published: List<PublishedManifest> = emptyList(), errors: List<ErrorManifest> = emptyList(), commands: List<CommandManifest> = emptyList(), routes: List<ServiceRouteManifest> = emptyList())
Properties
Functions
Link copied to clipboard
fun ContextManifest.copyWith(name: String = this.name, description: String? = this.description, aggregates: List<AggregateManifest> = this.aggregates, subscriptions: List<SubscriptionManifest> = this.subscriptions, published: List<PublishedManifest> = this.published, errors: List<ErrorManifest> = this.errors, commands: List<CommandManifest> = this.commands, routes: List<ServiceRouteManifest> = this.routes): ContextManifest