47         StoreFactory storeFactory = authorizationProvider.getStoreFactory();
    48         PolicyStore policyStore = storeFactory.getPolicyStore();
    49         ResourceStore resourceStore = storeFactory.getResourceStore();
    51         ResourceServer resourceServer = permission.getResourceServer();
    52         PolicyEnforcementMode enforcementMode = resourceServer.getPolicyEnforcementMode();
    54         if (PolicyEnforcementMode.DISABLED.equals(enforcementMode)) {
    55             DefaultEvaluation evaluation = 
new DefaultEvaluation(permission, executionContext, decision, authorizationProvider);
    59             decision.onComplete(permission);
    63         AtomicBoolean verified = 
new AtomicBoolean();
    64         Consumer<Policy> policyConsumer = 
createPolicyEvaluator(permission, authorizationProvider, executionContext, decision, verified, decisionCache);
    65         Resource resource = permission.getResource();
    67         if (resource != null) {
    68             policyStore.findByResource(resource.getId(), resourceServer.getId(), policyConsumer);
    70             if (resource.getType() != null) {
    71                 policyStore.findByResourceType(resource.getType(), resourceServer.getId(), policyConsumer);
    73                 if (!resource.getOwner().equals(resourceServer.getId())) {
    74                     for (Resource typedResource : resourceStore.findByType(resource.getType(), resourceServer.getId())) {
    75                         policyStore.findByResource(typedResource.getId(), resourceServer.getId(), policyConsumer);
    81         List<Scope> scopes = permission.getScopes();
    83         if (!scopes.isEmpty()) {
    84             policyStore.findByScopeIds(scopes.stream().map(
Scope::getId).collect(Collectors.toList()), null, resourceServer.getId(), policyConsumer);
    88             decision.onComplete(permission);
    92         if (PolicyEnforcementMode.PERMISSIVE.equals(enforcementMode)) {
    93             DefaultEvaluation evaluation = 
new DefaultEvaluation(permission, executionContext, decision, authorizationProvider);
    95             decision.onComplete(permission);
 Consumer< Policy > createPolicyEvaluator(ResourcePermission permission, AuthorizationProvider authorizationProvider, EvaluationContext executionContext, Decision decision, AtomicBoolean verified, Map< Policy, Map< Object, Decision.Effect >> decisionCache)
Definition: DefaultPolicyEvaluator.java:99