[jboss-svn-commits] JBL Code SVN: r9929 - in labs/jbosslabs/trunk/portal-extensions: forge-common/src/java/org/jboss/forge/common/projects/permissions and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Mar 3 10:39:33 EST 2007
Author: adamw
Date: 2007-03-03 10:39:33 -0500 (Sat, 03 Mar 2007)
New Revision: 9929
Added:
labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/permissions/PermissionsCheckerFactory.java
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsHelper.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/freezone/Freezone.java
Log:
Small improvement
Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsHelper.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsHelper.java 2007-03-03 15:37:46 UTC (rev 9928)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectsHelper.java 2007-03-03 15:39:33 UTC (rev 9929)
@@ -33,6 +33,7 @@
import org.jboss.forge.common.ForgeHelper;
import org.jboss.forge.common.projects.permissions.ActionRequestPermissionsChecker;
import org.jboss.forge.common.projects.permissions.RenderRequestPermissionsChecker;
+import org.jboss.forge.common.projects.permissions.PermissionsCheckerFactory;
import org.jboss.forge.common.ejb3.ProjectsService;
import org.jboss.logging.Logger;
import org.jboss.mx.util.MBeanProxyExt;
@@ -135,10 +136,6 @@
return getProjects(Constants.LABS_PORTAL);
}
- private static String getSeletedProjectId(PortletRequest request) {
- return request.getPreferences().getValue("projectId", "default");
- }
-
/**
* Equivalent to <code>getSelectedProjectId(request, false)</code>.
* @param request
@@ -147,7 +144,7 @@
* @return Selected project's id, or null, if no project is selected (never
* the default project, as it cannot be selected).
*/
- public static String getSelectedProjectId(JBossRenderRequest request) {
+ public static String getSelectedProjectId(PortletRequest request) {
return getSelectedProjectId(request, false);
}
@@ -161,9 +158,9 @@
* @return Selected project's id, or the default project's id/ null, depending
* on <code>withDefault</code>, if no project is selected.
*/
- public static String getSelectedProjectId(JBossRenderRequest request,
+ public static String getSelectedProjectId(PortletRequest request,
boolean withDefault) {
- String projectId = getSeletedProjectId(request);
+ String projectId = request.getPreferences().getValue("projectId", "default");
if ((projectId == null) && (withDefault)) {
projectId = DEFAULT_PROJECT;
@@ -171,7 +168,8 @@
projectId = null;
} else if ((!DEFAULT_PROJECT.equals(projectId)) &&
(getProjects(ForgeHelper.getPortalName(request)).getProjectContext(
- new RenderRequestPermissionsChecker(request), projectId) == null)) {
+ PermissionsCheckerFactory.getPermissionsChecker(request),
+ projectId) == null)) {
// No project context --> project does not exist.
projectId = null;
}
@@ -180,46 +178,6 @@
}
/**
- * Equivalent to <code>getSelectedProjectId(request, false)</code>.
- * @param request
- * A request object from which the selected project name will be
- * read.
- * @return Selected project's id, or null, if no project is selected (never
- * the default project, as it cannot be selected).
- */
- public static String getSelectedProjectId(JBossActionRequest request) {
- return getSelectedProjectId(request, false);
- }
-
- /**
- * @param request
- * A request object from which the selected project name will be
- * read.
- * @param withDefault
- * True if default project name should be returned if no project
- * is selected. False if null should be returned in such case.
- * @return Selected project's id, or the default project's id/ null, depending
- * on <code>withDefault</code>, if no project is selected.
- */
- public static String getSelectedProjectId(JBossActionRequest request,
- boolean withDefault) {
- String projectId = getSeletedProjectId(request);
-
- if ((projectId == null) && (withDefault)) {
- projectId = DEFAULT_PROJECT;
- } else if ((!withDefault) && (DEFAULT_PROJECT.equals(projectId))) {
- projectId = null;
- } else if ((!DEFAULT_PROJECT.equals(projectId)) &&
- (getProjects(ForgeHelper.getPortalName(request)).getProjectContext(
- new ActionRequestPermissionsChecker(request), projectId) == null)) {
- // No project context --> project does not exist.
- projectId = null;
- }
-
- return projectId;
- }
-
- /**
* Prepares a request object for generating a JSP. PROJECT_NAME and
* PROJECT_ID attributes are set.
*
Added: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/permissions/PermissionsCheckerFactory.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/permissions/PermissionsCheckerFactory.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/permissions/PermissionsCheckerFactory.java 2007-03-03 15:39:33 UTC (rev 9929)
@@ -0,0 +1,23 @@
+package org.jboss.forge.common.projects.permissions;
+
+import org.jboss.portlet.JBossActionRequest;
+import org.jboss.portlet.JBossRenderRequest;
+
+import javax.portlet.PortletRequest;
+
+/**
+ * @author <a href="mailto:adamw at aster.pl">Adam Warski</a>
+ */
+public class PermissionsCheckerFactory {
+ public static PermissionsChecker getPermissionsChecker(PortletRequest request) {
+ if (request instanceof JBossActionRequest) {
+ return new ActionRequestPermissionsChecker((JBossActionRequest) request);
+ }
+
+ if (request instanceof JBossRenderRequest) {
+ return new RenderRequestPermissionsChecker((JBossRenderRequest) request);
+ }
+
+ return new NullPermissionsChecker();
+ }
+}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/freezone/Freezone.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/freezone/Freezone.java 2007-03-03 15:37:46 UTC (rev 9928)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/freezone/Freezone.java 2007-03-03 15:39:33 UTC (rev 9929)
@@ -29,6 +29,7 @@
import org.jboss.forge.common.portlet.JBossLabsPortlet;
import org.jboss.forge.common.projects.ProjectsHelper;
import org.jboss.forge.common.projects.permissions.RenderRequestPermissionsChecker;
+import org.jboss.forge.common.projects.permissions.PermissionsCheckerFactory;
import org.jboss.forge.projects.exceptions.NotExistsException;
import org.jboss.portlet.JBossRenderRequest;
import org.jboss.portlet.JBossRenderResponse;
@@ -66,8 +67,8 @@
response.getWriter().println(ERROR_404_MSG);
}
- private String getRequestedPath(JBossRenderRequest request,
- JBossRenderResponse response) throws NotExistsException {
+ private String getRequestedPath(PortletRequest request,
+ PortletResponse response) throws NotExistsException {
/*
* Checking if the user has access to the selected project (this isn't
* checked in the url mapper).
@@ -78,7 +79,7 @@
&& (!"default".equals(projectId))
&& (!ProjectsHelper.getProjects(Constants.LABS_PORTAL)
.projectExists(
- new RenderRequestPermissionsChecker(request),
+ PermissionsCheckerFactory.getPermissionsChecker(request),
projectId))) {
throw new NotExistsException("Not allowed to see");
}
More information about the jboss-svn-commits
mailing list