57         ResourcePermission permission = result.getPermission();
    58         Resource resource = permission.getResource();
    59         List<Scope> requestedScopes = permission.getScopes();
    61         if (Effect.PERMIT.equals(result.getEffect())) {
    64             Set<Scope> grantedScopes = 
new HashSet<>();
    65             Set<Scope> deniedScopes = 
new HashSet<>();
    66             List<Result.PolicyResult> userManagedPermissions = 
new ArrayList<>();
    67             boolean resourceGranted = 
false;
    68             boolean anyDeny = 
false;
    70             for (Result.PolicyResult policyResult : result.getResults()) {
    71                 Policy policy = policyResult.getPolicy();
    72                 Set<Scope> policyScopes = policy.getScopes();
    76                         for (Scope scope : requestedScopes) {
    77                             if (policyScopes.contains(scope)) {
    78                                 grantedScopes.add(scope);
    82                         grantedScopes.addAll(requestedScopes);
    83                     } 
else if (resource != null && resource.isOwnerManagedAccess() && 
"uma".equals(policy.getType())) {
    84                         userManagedPermissions.add(policyResult);
    86                     if (!resourceGranted) {
    87                         resourceGranted = policy.getResources().contains(resource);
    91                         if (!resourceGranted) {
    92                             deniedScopes.addAll(requestedScopes);
    95                         deniedScopes.addAll(policyScopes);
   104             grantedScopes.removeAll(deniedScopes);
   106             if (userManagedPermissions.isEmpty()) {
   107                 if (!resourceGranted && (grantedScopes.isEmpty() && !requestedScopes.isEmpty())) {
   111                 for (Result.PolicyResult userManagedPermission : userManagedPermissions) {
   112                     grantedScopes.addAll(userManagedPermission.getPolicy().getScopes());
   115                 if (grantedScopes.isEmpty() && !resource.getScopes().isEmpty()) {
   122             if (anyDeny && grantedScopes.isEmpty()) {
 static boolean isScopePermission(Policy policy)
Definition: DecisionPermissionCollector.java:185
 
boolean isGranted(Result.PolicyResult policyResult)
Definition: AbstractDecisionCollector.java:98
 
final ResourceServer resourceServer
Definition: DecisionPermissionCollector.java:45
 
final List< Permission > permissions
Definition: DecisionPermissionCollector.java:47
 
final AuthorizationProvider authorizationProvider
Definition: DecisionPermissionCollector.java:44
 
final AuthorizationRequest request
Definition: DecisionPermissionCollector.java:46
 
static boolean isResourcePermission(Policy policy)
Definition: DecisionPermissionCollector.java:181
 
void grantPermission(AuthorizationProvider authorizationProvider, List< Permission > permissions, ResourcePermission permission, Collection< Scope > grantedScopes, ResourceServer resourceServer, AuthorizationRequest request, Result result)
Definition: DecisionPermissionCollector.java:139