[jboss-svn-commits] JBL Code SVN: r10299 - in labs/jbosslabs/trunk/portal-extensions: forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Mar 17 08:27:37 EDT 2007
Author: adamw
Date: 2007-03-17 08:27:37 -0400 (Sat, 17 Mar 2007)
New Revision: 10299
Added:
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/menu/
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/menu/MenuPortlet.java
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-blog/src/java/org/jboss/labs/blog/service/permissions/LabsPermissionsService.java
labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/portlet.xml
Log:
Menu portlet
Modified: labs/jbosslabs/trunk/portal-extensions/forge-blog/src/java/org/jboss/labs/blog/service/permissions/LabsPermissionsService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-blog/src/java/org/jboss/labs/blog/service/permissions/LabsPermissionsService.java 2007-03-17 11:07:49 UTC (rev 10298)
+++ labs/jbosslabs/trunk/portal-extensions/forge-blog/src/java/org/jboss/labs/blog/service/permissions/LabsPermissionsService.java 2007-03-17 12:27:37 UTC (rev 10299)
@@ -3,6 +3,8 @@
import org.jboss.blog.service.permissions.portal.PortalBlogPermissionsService;
import org.jboss.blog.service.permissions.portal.AbstractPortalBlogPermissionsService;
import org.jboss.blog.service.permissions.context.SecurityContext;
+import org.jboss.blog.service.permissions.context.JSFUIContext;
+import org.jboss.blog.service.permissions.context.JSFSecurityContext;
import org.jboss.blog.model.BlogAuthor;
/**
@@ -11,6 +13,13 @@
public class LabsPermissionsService extends AbstractPortalBlogPermissionsService
implements PortalBlogPermissionsService {
public boolean hasAccess(SecurityContext securityContext) {
+ if (securityContext instanceof JSFUIContext) {
+ String fragment = ((JSFUIContext) securityContext).getFragment();
+
+ return "acl://viewCategory".equals(fragment);
+
+ }
+
return true;
}
}
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-03-17 11:07:49 UTC (rev 10298)
+++ labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projectpages/ProjectPagesServiceBean.java 2007-03-17 12:27:37 UTC (rev 10299)
@@ -21,6 +21,7 @@
import org.jboss.portal.security.AuthorizationDomainRegistry;
import org.jboss.portal.portlet.PortletInvokerException;
import org.jboss.portal.portlet.Portlet;
+import org.jboss.portal.portlet.NoSuchPortletException;
import org.jboss.portal.portlet.state.PropertyChange;
import org.jboss.portal.common.value.StringValue;
import org.jboss.portal.theme.ThemeConstants;
@@ -60,6 +61,10 @@
*/
private class UnknownPortletException extends Exception {
+ public UnknownPortletException(Throwable cause) {
+ super(cause);
+ }
+
public UnknownPortletException(String message) {
super(message);
}
@@ -385,6 +390,8 @@
setInstancePreference(instance, "projectId", projectId);
return instance;
+ } catch (NoSuchPortletException e) {
+ throw new UnknownPortletException(e);
} catch (DuplicateInstanceException e) {
throw new UnknownPortalException(e);
} catch (PortletInvokerException e) {
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/menu/MenuPortlet.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/menu/MenuPortlet.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/menu/MenuPortlet.java 2007-03-17 12:27:37 UTC (rev 10299)
@@ -0,0 +1,41 @@
+package org.jboss.forge.projects.menu;
+
+import org.jboss.forge.common.ForgeHelper;
+import org.jboss.forge.common.Constants;
+import org.jboss.forge.common.exceptions.ServiceRetrievalException;
+import org.jboss.forge.common.ejb3.LabsServices;
+import org.jboss.forge.common.projects.project.Project;
+import org.jboss.forge.common.projects.ProjectsHelper;
+
+import javax.portlet.*;
+import java.io.IOException;
+
+/**
+ * @author <a href="mailto:adamw at aster.pl">Adam Warski</a>
+ */
+public class MenuPortlet extends GenericPortlet {
+ public void render(RenderRequest request, RenderResponse response)
+ throws PortletException, IOException {
+ response.setContentType("text/html");
+
+ String projectId = ProjectsHelper.getSelectedProjectId(request);
+
+ Project prj;
+ try {
+ prj = LabsServices.getProjectsService().getProjectById(projectId);
+ } catch (ServiceRetrievalException e) {
+ response.getWriter().write("Project does not exist.");
+ return;
+ }
+
+ request.setAttribute("prjId", projectId);
+ request.setAttribute("prj", prj);
+ request.setAttribute("pref", request.getPreferences().getMap());
+
+ PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(
+ ForgeHelper.createRepoAccessPath(
+ Constants.LABS_PORTAL, "menu/menu.jsp"));
+
+ rd.include(request, response);
+ }
+}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/portlet.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/portlet.xml 2007-03-17 11:07:49 UTC (rev 10298)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/portlet.xml 2007-03-17 12:27:37 UTC (rev 10299)
@@ -90,25 +90,81 @@
<value>default</value>
</preference>
</portlet-preferences>
- </portlet>
-
- <portlet>
- <description>Project admin panel</description>
- <portlet-name>ProjectAdminPortlet</portlet-name>
- <display-name>Project administration</display-name>
- <portlet-class>org.apache.myfaces.portlet.MyFacesGenericPortlet</portlet-class>
- <init-param>
- <name>default-view</name>
- <value>/repo-access/default/prj-admin/info-edit.jsp</value>
- </init-param>
- <expiration-cache>0</expiration-cache>
- <supports>
- <mime-type>text/html</mime-type>
- <portlet-mode>VIEW</portlet-mode>
- </supports>
- <portlet-info>
- <title>Project administration</title>
- </portlet-info>
- <portlet-preferences/>
</portlet>
+
+ <portlet>
+ <description>Project admin panel</description>
+ <portlet-name>ProjectAdminPortlet</portlet-name>
+ <display-name>Project administration</display-name>
+ <portlet-class>org.apache.myfaces.portlet.MyFacesGenericPortlet</portlet-class>
+ <init-param>
+ <name>default-view</name>
+ <value>/repo-access/default/prj-admin/info-edit.jsp</value>
+ </init-param>
+ <expiration-cache>0</expiration-cache>
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>VIEW</portlet-mode>
+ </supports>
+ <portlet-info>
+ <title>Project administration</title>
+ </portlet-info>
+ <portlet-preferences/>
+ </portlet>
+
+ <portlet>
+ <description>Project Menu Portlet</description>
+ <portlet-name>MenuPortlet</portlet-name>
+ <display-name>Project Menu Portlet</display-name>
+ <portlet-class>org.jboss.forge.projects.menu.MenuPortlet</portlet-class>
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>VIEW</portlet-mode>
+ </supports>
+ <portlet-info>
+ <title>Project Menu</title>
+ </portlet-info>
+ <portlet-preferences>
+ <preference>
+ <name>projectId</name>
+ <value>default</value>
+ </preference>
+ <preference>
+ <name>showPages</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showAnonRepo</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showCommiterRepo</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showIssueTracker</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showUserForum</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showDevForum</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showTraining</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showSupport</name>
+ <value>true</value>
+ </preference>
+ <preference>
+ <name>showDocumentation</name>
+ <value>true</value>
+ </preference>
+ </portlet-preferences>
+ </portlet>
</portlet-app>
More information about the jboss-svn-commits
mailing list