evaluateWithCache method
Evaluate and also check the cache first.
Implementation
PermissionDecision evaluateWithCache(
PermissionRequest request,
PermissionCache cache,
) {
final cached = cache.get(request.cacheKey);
if (cached != null && !cached.isExpired) {
return cached;
}
final decision = evaluate(request);
if (decision.level.isCacheable) {
cache.set(request.cacheKey, decision);
}
return decision;
}