keycloak-aplcache

public realm info update

2/28/2014 11:52:53 AM

Details

diff --git a/core/src/main/java/org/keycloak/representations/idm/PublishedRealmRepresentation.java b/core/src/main/java/org/keycloak/representations/idm/PublishedRealmRepresentation.java
index 4f1f2ea..20cc452 100755
--- a/core/src/main/java/org/keycloak/representations/idm/PublishedRealmRepresentation.java
+++ b/core/src/main/java/org/keycloak/representations/idm/PublishedRealmRepresentation.java
@@ -15,34 +15,22 @@ import java.security.PublicKey;
  */
 public class PublishedRealmRepresentation {
     protected String realm;
-    protected String self;
 
     @JsonProperty("public_key")
     protected String publicKeyPem;
 
-    @JsonProperty("authorization")
-    protected String authorizationUrl;
+    @JsonProperty("token-service")
+    protected String tokenServiceUrl;
 
-    @JsonProperty("codes")
-    protected String codeUrl;
+    @JsonProperty("account-service")
+    protected String accountServiceUrl;
 
-    @JsonProperty("grants")
-    protected String grantUrl;
-
-    @JsonProperty("admin-role")
-    protected String adminRole;
+    @JsonProperty("admin-api")
+    protected String adminApiUrl;
 
     @JsonIgnore
     protected volatile transient PublicKey publicKey;
 
-    public String getAdminRole() {
-        return adminRole;
-    }
-
-    public void setAdminRole(String adminRole) {
-        this.adminRole = adminRole;
-    }
-
     public String getRealm() {
         return realm;
     }
@@ -51,14 +39,6 @@ public class PublishedRealmRepresentation {
         this.realm = realm;
     }
 
-    public String getSelf() {
-        return self;
-    }
-
-    public void setSelf(String self) {
-        this.self = self;
-    }
-
     public String getPublicKeyPem() {
         return publicKeyPem;
     }
@@ -97,28 +77,27 @@ public class PublishedRealmRepresentation {
         this.publicKeyPem = PemUtils.removeBeginEnd(s);
     }
 
-
-    public String getAuthorizationUrl() {
-        return authorizationUrl;
+    public String getTokenServiceUrl() {
+        return tokenServiceUrl;
     }
 
-    public void setAuthorizationUrl(String authorizationUrl) {
-        this.authorizationUrl = authorizationUrl;
+    public void setTokenServiceUrl(String tokenServiceUrl) {
+        this.tokenServiceUrl = tokenServiceUrl;
     }
 
-    public String getCodeUrl() {
-        return codeUrl;
+    public String getAccountServiceUrl() {
+        return accountServiceUrl;
     }
 
-    public void setCodeUrl(String codeUrl) {
-        this.codeUrl = codeUrl;
+    public void setAccountServiceUrl(String accountServiceUrl) {
+        this.accountServiceUrl = accountServiceUrl;
     }
 
-    public String getGrantUrl() {
-        return grantUrl;
+    public String getAdminApiUrl() {
+        return adminApiUrl;
     }
 
-    public void setGrantUrl(String grantUrl) {
-        this.grantUrl = grantUrl;
+    public void setAdminApiUrl(String adminApiUrl) {
+        this.adminApiUrl = adminApiUrl;
     }
 }
diff --git a/services/src/main/java/org/keycloak/services/resources/AccountService.java b/services/src/main/java/org/keycloak/services/resources/AccountService.java
index 19f0071..3814691 100755
--- a/services/src/main/java/org/keycloak/services/resources/AccountService.java
+++ b/services/src/main/java/org/keycloak/services/resources/AccountService.java
@@ -74,6 +74,12 @@ public class AccountService {
         this.authManager =  new AppAuthManager("KEYCLOAK_ACCOUNT_IDENTITY", tokenManager);
     }
 
+    public static UriBuilder accountServiceBaseUrl(UriInfo uriInfo) {
+        UriBuilder base = uriInfo.getBaseUriBuilder().path(RealmsResource.class).path(RealmsResource.class, "getAccountService");
+        return base;
+    }
+
+
     private Response forwardToPage(String path, AccountPages page) {
         Auth auth = getAuth(false);
         if (auth != null) {
diff --git a/services/src/main/java/org/keycloak/services/resources/admin/AdminService.java b/services/src/main/java/org/keycloak/services/resources/admin/AdminService.java
index 0b1aa12..afe2317 100755
--- a/services/src/main/java/org/keycloak/services/resources/admin/AdminService.java
+++ b/services/src/main/java/org/keycloak/services/resources/admin/AdminService.java
@@ -17,6 +17,7 @@ import org.keycloak.services.managers.AppAuthManager;
 import org.keycloak.services.managers.Auth;
 import org.keycloak.services.managers.RealmManager;
 import org.keycloak.services.managers.TokenManager;
+import org.keycloak.services.resources.RealmsResource;
 import org.keycloak.services.resources.TokenService;
 import org.keycloak.services.resources.flows.Flows;
 
@@ -75,6 +76,12 @@ public class AdminService {
         this.authManager = new AppAuthManager("KEYCLOAK_ADMIN_CONSOLE_IDENTITY", tokenManager);
     }
 
+    public static UriBuilder adminApiUrl(UriInfo uriInfo) {
+        UriBuilder base = uriInfo.getBaseUriBuilder().path(AdminService.class).path(AdminService.class, "getRealmsAdmin").path(RealmsAdminResource.class, "getRealmAdmin");
+        return base;
+    }
+
+
     public static class WhoAmI {
         protected String userId;
         protected String displayName;
diff --git a/services/src/main/java/org/keycloak/services/resources/PublicRealmResource.java b/services/src/main/java/org/keycloak/services/resources/PublicRealmResource.java
index 944f1a9..81f12a2 100755
--- a/services/src/main/java/org/keycloak/services/resources/PublicRealmResource.java
+++ b/services/src/main/java/org/keycloak/services/resources/PublicRealmResource.java
@@ -4,6 +4,7 @@ import org.jboss.resteasy.annotations.cache.NoCache;
 import org.jboss.resteasy.logging.Logger;
 import org.keycloak.models.RealmModel;
 import org.keycloak.representations.idm.PublishedRealmRepresentation;
+import org.keycloak.services.resources.admin.AdminService;
 
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
@@ -19,7 +20,6 @@ import javax.ws.rs.core.UriInfo;
  */
 public class PublicRealmResource {
     protected static final  Logger logger = Logger.getLogger(PublicRealmResource.class);
-    public static final String ADMIN_ROLE = "$REALM-ADMIN$";
 
     @Context
     protected UriInfo uriInfo;
@@ -30,12 +30,6 @@ public class PublicRealmResource {
         this.realm = realm;
     }
 
-    public static UriBuilder realmUrl(UriInfo uriInfo) {
-        UriBuilder base = uriInfo.getBaseUriBuilder()
-                .path(RealmsResource.class).path(RealmsResource.class, "getRealmResource");
-        return base;
-    }
-
     @GET
     @NoCache
     @Produces("application/json")
@@ -43,38 +37,13 @@ public class PublicRealmResource {
         return realmRep(realm, uriInfo);
     }
 
-    @GET
-    @NoCache
-    @Path("html")
-    @Produces("text/html")
-    public String getRealmHtml(@PathParam("realm") String id) {
-        StringBuffer html = new StringBuffer();
-
-        String authUri = TokenService.loginPageUrl(uriInfo).build(realm.getName()).toString();
-        String codeUri = TokenService.accessCodeToTokenUrl(uriInfo).build(realm.getName()).toString();
-        String grantUrl = TokenService.grantAccessTokenUrl(uriInfo).build(realm.getName()).toString();
-
-        html.append("<html><body><h1>Realm: ").append(realm.getName()).append("</h1>");
-        html.append("<p>auth: ").append(authUri).append("</p>");
-        html.append("<p>code: ").append(codeUri).append("</p>");
-        html.append("<p>grant: ").append(grantUrl).append("</p>");
-        html.append("<p>public key: ").append(realm.getPublicKeyPem()).append("</p>");
-        html.append("</body></html>");
-
-        return html.toString();
-    }
-
-
     public static PublishedRealmRepresentation realmRep(RealmModel realm, UriInfo uriInfo) {
         PublishedRealmRepresentation rep = new PublishedRealmRepresentation();
         rep.setRealm(realm.getName());
-        rep.setSelf(realmUrl(uriInfo).build(realm.getId()).toString());
+        rep.setTokenServiceUrl(TokenService.tokenServiceBaseUrl(uriInfo).build(realm.getId()).toString());
+        rep.setAccountServiceUrl(AccountService.accountServiceBaseUrl(uriInfo).build(realm.getId()).toString());
+        rep.setAdminApiUrl(AdminService.adminApiUrl(uriInfo).build(realm.getId()).toString());
         rep.setPublicKeyPem(realm.getPublicKeyPem());
-        rep.setAdminRole(ADMIN_ROLE);
-
-        rep.setAuthorizationUrl(TokenService.loginPageUrl(uriInfo).build(realm.getName()).toString());
-        rep.setCodeUrl(TokenService.accessCodeToTokenUrl(uriInfo).build(realm.getName()).toString());
-        rep.setGrantUrl(TokenService.grantAccessTokenUrl(uriInfo).build(realm.getName()).toString());
         return rep;
     }