Repository: cxf Updated Branches: refs/heads/master 502db47a7 -> 457ad7c4e
Letting AbstractOAuthProvider extensions add as many permissions as needed per a single scope Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/457ad7c4 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/457ad7c4 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/457ad7c4 Branch: refs/heads/master Commit: 457ad7c4e99269999073a358ac9ff9508b858f1b Parents: 502db47 Author: Sergey Beryozkin <[email protected]> Authored: Tue Aug 30 21:29:00 2016 +0100 Committer: Sergey Beryozkin <[email protected]> Committed: Tue Aug 30 21:29:00 2016 +0100 ---------------------------------------------------------------------- .../security/oauth2/provider/AbstractOAuthDataProvider.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/457ad7c4/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/AbstractOAuthDataProvider.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/AbstractOAuthDataProvider.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/AbstractOAuthDataProvider.java index 9a3631e..41acfef 100644 --- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/AbstractOAuthDataProvider.java +++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/AbstractOAuthDataProvider.java @@ -249,7 +249,7 @@ public abstract class AbstractOAuthDataProvider implements OAuthDataProvider, Cl } else { List<OAuthPermission> list = new ArrayList<OAuthPermission>(); for (String scope : requestedScopes) { - list.add(convertSingleScopeToPermission(client, scope)); + convertSingleScopeToPermission(client, scope, list); } if (!list.isEmpty()) { return list; @@ -259,12 +259,14 @@ public abstract class AbstractOAuthDataProvider implements OAuthDataProvider, Cl } - protected OAuthPermission convertSingleScopeToPermission(Client client, String scope) { + protected void convertSingleScopeToPermission(Client client, + String scope, + List<OAuthPermission> perms) { OAuthPermission permission = permissionMap.get(scope); if (permission == null) { throw new OAuthServiceException("Unexpected scope: " + scope); } - return permission; + perms.add(permission); } @Override
