CapabilityEvaluator class

Evaluates Capabilitys against a fixed set of granted permissions.

Create one per permission snapshot (e.g. after each login) and reuse it to evaluate any number of capabilities.

Constructors

CapabilityEvaluator(Set<PermissionKey> grantedPermissions)

Properties

grantedPermissions Set<PermissionKey>
The permissions the current user holds.
final
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

availableFrom(Iterable<Capability> all) List<Capability>
Returns only the capabilities from all that are currently available.
evaluate(Capability capability) CapabilityResult
Full evaluation with reasons (missing permissions + unmet prerequisites).
hasPermissions(Capability capability) bool
Whether the user holds every permission directly required by capability (ignores prerequisites).
isAvailable(Capability capability) bool
Whether capability is fully available: all required permissions granted and every prerequisite available (recursively).
missingPermissions(Capability capability) Set<PermissionKey>
Permissions directly required by capability that are not granted (does not consider prerequisites).
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
unmetPrerequisites(Capability capability) Set<Capability>
Direct prerequisites of capability that are not available.

Operators

operator ==(Object other) bool
The equality operator.
inherited