[jboss-svn-commits] JBL Code SVN: r11192 - labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Apr 21 13:46:52 EDT 2007


Author: adamw
Date: 2007-04-21 13:46:52 -0400 (Sat, 21 Apr 2007)
New Revision: 11192

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java
Log:
Various fixes

Modified: labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java	2007-04-21 17:39:43 UTC (rev 11191)
+++ labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java	2007-04-21 17:46:52 UTC (rev 11192)
@@ -295,11 +295,14 @@
      * @param portalObjIds A set where the id of the page should be added, for
      * later cleanup.
      * @param allowedRoles A set of roles, which are allowed to view the page.
+     * @param forceUpdateRoles Should roles always be updated, not only when
+     * the page is created.
      * @return A specified page for this project.
      * @throws UnknownPortalException In case of a portal exception.
      */
     private Page getPage(PortalObject parent, String projectId, String pageName,
-                         Set<PortalObjectId> portalObjIds, Set<String> allowedRoles) throws UnknownPortalException {
+                         Set<PortalObjectId> portalObjIds, Set<String> allowedRoles,
+                         boolean forceUpdateRoles) throws UnknownPortalException {
         // Checking if the page already exists.
         Page page = (Page) parent.getChild(pageName);
         if (page != null) {
@@ -316,13 +319,17 @@
                 page.setDeclaredProperty("layout.id", "projectDetails");
 
                 portalObjIds.add(page.getId());
+
+                forceUpdateRoles = true;
             } catch (DuplicatePortalObjectException e) {
                 throw new UnknownPortalException(e);
             }
         }
 
         // Allowing users to view the page.
-        setSecurityBindings(page, allowedRoles);
+        if (forceUpdateRoles) {
+            setSecurityBindings(page, allowedRoles);
+        }
 
         return page;
     }
@@ -342,9 +349,10 @@
     private Page getProjectPage(String projectId, String pageName, Set<PortalObjectId> portalObjIds,
                                 Set<String> allowedRoles)
             throws UnknownPortalException {
-        Page page = getPage(getLabsPortal(), projectId, projectId, portalObjIds, allowedRoles);
+        Page page = getPage(getLabsPortal(), projectId, projectId, portalObjIds, allowedRoles, !Tools.isEmpty(pageName));
+
         if (!Tools.isEmpty(pageName)) {
-            page = getPage(page, projectId, pageName, portalObjIds, allowedRoles);
+            page = getPage(page, projectId, pageName, portalObjIds, allowedRoles, true);
         }
 
         return page;




More information about the jboss-svn-commits mailing list