You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2016/09/27 11:36:14 UTC
cxf git commit: Minor update to the dynamic reg service code
Repository: cxf
Updated Branches:
refs/heads/master 8e1b9741f -> 728e60aa5
Minor update to the dynamic reg service code
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/728e60aa
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/728e60aa
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/728e60aa
Branch: refs/heads/master
Commit: 728e60aa55ea19693efdcf96c9a2232fe2bc8edc
Parents: 8e1b974
Author: Sergey Beryozkin <sb...@gmail.com>
Authored: Tue Sep 27 12:35:59 2016 +0100
Committer: Sergey Beryozkin <sb...@gmail.com>
Committed: Tue Sep 27 12:35:59 2016 +0100
----------------------------------------------------------------------
.../services/DynamicRegistrationService.java | 17 +++++++++++++++--
.../cxf/rs/security/oauth2/utils/OAuthUtils.java | 11 +++++++++++
.../security/oidc/OIDCDynamicRegistrationTest.java | 14 +++++++-------
3 files changed, 33 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/728e60aa/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java
----------------------------------------------------------------------
diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java
index e4c252c..ab6cb46 100644
--- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java
+++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java
@@ -135,8 +135,21 @@ public class DynamicRegistrationService extends AbstractOAuthService {
return fromClientToClientRegistration(client);
}
- protected ClientRegistration fromClientToClientRegistration(Client client) {
- return new ClientRegistration();
+ protected ClientRegistration fromClientToClientRegistration(Client c) {
+ ClientRegistration reg = new ClientRegistration();
+ reg.setClientName(c.getApplicationName());
+ reg.setGrantTypes(c.getAllowedGrantTypes());
+ reg.setApplicationType(c.isConfidential() ? "web" : "native");
+ reg.setRedirectUris(c.getRedirectUris());
+ reg.setScope(OAuthUtils.convertListOfScopesToString(c.getRegisteredScopes()));
+ if (c.getApplicationWebUri() != null) {
+ reg.setClientUri(c.getApplicationWebUri());
+ }
+ if (c.getApplicationLogoUri() != null) {
+ reg.setLogoUri(c.getApplicationLogoUri());
+ }
+ //etc
+ return reg;
}
protected Client readClient(String clientId) {
http://git-wip-us.apache.org/repos/asf/cxf/blob/728e60aa/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java
----------------------------------------------------------------------
diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java
index d08969b..ab2e88c 100644
--- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java
+++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java
@@ -344,4 +344,15 @@ public final class OAuthUtils {
return sigAlgo;
}
}
+
+ public static String convertListOfScopesToString(List<String> registeredScopes) {
+ StringBuilder sb = new StringBuilder();
+ for (String s : registeredScopes) {
+ if (sb.length() > 0) {
+ sb.append(", ");
+ }
+ sb.append(s);
+ }
+ return sb.toString();
+ }
}
http://git-wip-us.apache.org/repos/asf/cxf/blob/728e60aa/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java
----------------------------------------------------------------------
diff --git a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java
index 74c6f97..f85a181 100644
--- a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java
+++ b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java
@@ -105,13 +105,13 @@ public class OIDCDynamicRegistrationTest extends AbstractBusClientServerTestBase
wc.authorization(new ClientAccessToken("Bearer", regAccessToken));
ClientRegistration clientRegResp = wc.get(ClientRegistration.class);
assertNotNull(clientRegResp);
-// assertEquals("web", clientRegResp.getApplicationType());
-// assertEquals("dynamic_client", clientRegResp.getClientName());
-// assertEquals("openid", clientRegResp.getScope());
-// assertEquals(Collections.singletonList("authorization_code"),
-// clientRegResp.getGrantTypes());
-// assertEquals(Collections.singletonList("https://a/b/c"),
-// clientRegResp.getRedirectUris());
+ assertEquals("web", clientRegResp.getApplicationType());
+ assertEquals("dynamic_client", clientRegResp.getClientName());
+ assertEquals("openid", clientRegResp.getScope());
+ assertEquals(Collections.singletonList("authorization_code"),
+ clientRegResp.getGrantTypes());
+ assertEquals(Collections.singletonList("https://a/b/c"),
+ clientRegResp.getRedirectUris());
assertEquals(200, wc.delete().getStatus());
}