AccessPolicies

The access policies of a node's aggregates (AccessPolicy, a bean of the service for each aggregate), each resolved to its aggregate and checked against the Manifest once, when the engine is built (of). An aggregate with a policy of its own is governed: its reads are what the policy's read lets a caller read (AccessQueryPolicy). Any other reads by the default rule, its caller's owner and space (ScopeQueryPolicy), as before access policies.

Types

Link copied to clipboard

Properties

Link copied to clipboard

The aggregates with a policy of their own.

Functions

Link copied to clipboard
fun declares(type: AggregateType, attribute: AccessAttribute<*, *>): Boolean

Whether attribute is one type has, as a policy of it may compare it: AccessAttribute.SPACE of every aggregate, AccessAttribute.OWNER of one its owner holds, and a declared one by its name, type and multiplicity.

Link copied to clipboard

Whether type reads by a policy of its own rather than by the default rule.

Whether dataset's rows are those of an aggregate that reads by a policy of its own, which its scope binds.

Link copied to clipboard

Whether the node has type: one of the Manifest's aggregates.

Link copied to clipboard
fun of(type: AggregateType): AccessPolicy<*>?

The policy of type, or null when it reads by the default rule.

Link copied to clipboard
fun scopeOf(type: AggregateType, ownership: Ownership, scope: Scope): Scope

The owner and space of scope, a caller's, that every read of type holds the caller to (its snapshot and events queries, its state reads, in process and over HTTP): none where a policy of its own governs type, which decides them instead; otherwise the part of scope ownership, type's, keeps.