[jboss-svn-commits] JBoss Portal SVN: r5384 - in trunk: core/src/main/org/jboss/portal/core/aspects/controller core/src/main/org/jboss/portal/core/controller core/src/main/org/jboss/portal/core/controller/ajax core/src/main/org/jboss/portal/core/controller/command core/src/resources/portal-core-sar/META-INF theme/src/main/org/jboss/portal/theme/impl/render/dynamic
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Oct 9 20:02:01 EDT 2006
Author: julien at jboss.com
Date: 2006-10-09 20:01:51 -0400 (Mon, 09 Oct 2006)
New Revision: 5384
Modified:
trunk/core/src/main/org/jboss/portal/core/aspects/controller/PolicyEnforcementInterceptor.java
trunk/core/src/main/org/jboss/portal/core/controller/CoreController.java
trunk/core/src/main/org/jboss/portal/core/controller/ajax/AjaxController.java
trunk/core/src/main/org/jboss/portal/core/controller/command/MoveWindowCommand.java
trunk/core/src/resources/portal-core-sar/META-INF/jboss-service.xml
trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaRegionRenderer.java
Log:
- save window move position in DB for dashboard
Modified: trunk/core/src/main/org/jboss/portal/core/aspects/controller/PolicyEnforcementInterceptor.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/aspects/controller/PolicyEnforcementInterceptor.java 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/core/src/main/org/jboss/portal/core/aspects/controller/PolicyEnforcementInterceptor.java 2006-10-10 00:01:51 UTC (rev 5384)
@@ -54,18 +54,6 @@
/** Trace . */
protected boolean isTrace = log.isTraceEnabled();
- private PortalAuthorizationManagerFactory portalAuthorizationManagerFactory;
-
- public PortalAuthorizationManagerFactory getPortalAuthorizationManagerFactory()
- {
- return portalAuthorizationManagerFactory;
- }
-
- public void setPortalAuthorizationManagerFactory(PortalAuthorizationManagerFactory portalAuthorizationManagerFactory)
- {
- this.portalAuthorizationManagerFactory = portalAuthorizationManagerFactory;
- }
-
/**
* @param cmd
* @throws org.jboss.portal.common.invocation.InvocationException
@@ -74,7 +62,8 @@
{
try
{
- PortalAuthorizationManager pam = this.portalAuthorizationManagerFactory.getManager();
+ PortalAuthorizationManagerFactory pamf = cmd.getControllerContext().getController().getPortalAuthorizationManagerFactory();
+ PortalAuthorizationManager pam = pamf.getManager();
cmd.enforceSecurity(pam);
cmd.invokeNext();
}
Modified: trunk/core/src/main/org/jboss/portal/core/controller/CoreController.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/controller/CoreController.java 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/core/src/main/org/jboss/portal/core/controller/CoreController.java 2006-10-10 00:01:51 UTC (rev 5384)
@@ -54,6 +54,7 @@
import org.jboss.portal.portlet.invocation.PortletInvocation;
import org.jboss.portal.WindowState;
import org.jboss.portal.Mode;
+import org.jboss.portal.security.spi.auth.PortalAuthorizationManagerFactory;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
@@ -86,6 +87,19 @@
/** . */
private InstanceContainer instanceContainer;
+ /** . */
+ private PortalAuthorizationManagerFactory portalAuthorizationManagerFactory;
+
+ public PortalAuthorizationManagerFactory getPortalAuthorizationManagerFactory()
+ {
+ return portalAuthorizationManagerFactory;
+ }
+
+ public void setPortalAuthorizationManagerFactory(PortalAuthorizationManagerFactory portalAuthorizationManagerFactory)
+ {
+ this.portalAuthorizationManagerFactory = portalAuthorizationManagerFactory;
+ }
+
public InstanceContainer getInstanceContainer()
{
return instanceContainer;
Modified: trunk/core/src/main/org/jboss/portal/core/controller/ajax/AjaxController.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/controller/ajax/AjaxController.java 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/core/src/main/org/jboss/portal/core/controller/ajax/AjaxController.java 2006-10-10 00:01:51 UTC (rev 5384)
@@ -24,7 +24,6 @@
import org.jboss.portal.server.RequestController;
import org.jboss.portal.server.ServerInvocation;
import org.jboss.portal.server.ServerException;
-import org.jboss.portal.jems.as.system.AbstractJBossService;
import org.jboss.portal.core.controller.ControllerCommand;
import org.jboss.portal.core.controller.ControllerContext;
import org.jboss.portal.core.controller.CoreController;
@@ -32,8 +31,6 @@
import org.jboss.portal.core.controller.command.MoveWindowCommand;
import javax.servlet.http.HttpServletRequest;
-import java.util.Map;
-import java.util.HashMap;
/**
* @author <a href="mailto:julien at jboss.org">Julien Viet</a>
@@ -51,12 +48,12 @@
{
String windowId = req.getParameter("windowId");
String fromPos = req.getParameter("fromPos");
- String fromRegionId = req.getParameter("fromRegionId");
+ String fromRegion = req.getParameter("fromRegion");
String toPos = req.getParameter("toPos");
- String toRegionId = req.getParameter("toRegionId");
+ String toRegion = req.getParameter("toRegion");
int fromPosInt = Integer.parseInt(fromPos);
int toPosInt = Integer.parseInt(toPos);
- ControllerCommand cmd = new MoveWindowCommand(windowId, fromPosInt, fromRegionId, toPosInt, toRegionId);
+ ControllerCommand cmd = new MoveWindowCommand(windowId, fromPosInt, fromRegion, toPosInt, toRegion);
ControllerContext controllerContext = new ControllerContext(invocation, this);
try
{
Modified: trunk/core/src/main/org/jboss/portal/core/controller/command/MoveWindowCommand.java
===================================================================
--- trunk/core/src/main/org/jboss/portal/core/controller/command/MoveWindowCommand.java 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/core/src/main/org/jboss/portal/core/controller/command/MoveWindowCommand.java 2006-10-10 00:01:51 UTC (rev 5384)
@@ -25,8 +25,15 @@
import org.jboss.portal.core.controller.command.info.ActionCommandInfo;
import org.jboss.portal.core.controller.ControllerException;
import org.jboss.portal.core.controller.ControllerCommand;
+import org.jboss.portal.core.model.portal.PortalObject;
+import org.jboss.portal.core.model.portal.Window;
+import org.jboss.portal.core.model.portal.PortalObjectPermission;
import org.jboss.portal.theme.page.WindowContext;
import org.jboss.portal.theme.navigation.PageNavigationalState;
+import org.jboss.portal.theme.ThemeConstants;
+import org.jboss.portal.security.spi.auth.PortalAuthorizationManagerFactory;
+import org.jboss.portal.security.spi.auth.PortalAuthorizationManager;
+import org.jboss.portal.security.PortalSecurityException;
import java.util.Iterator;
@@ -44,22 +51,22 @@
private int fromPos;
/** . */
- private String fromRegionId;
+ private String fromRegion;
/** . */
private int toPos;
/** . */
- private String toRegionId;
+ private String toRegion;
public MoveWindowCommand(String windowRef, int fromPos, String fromRegion, int toPos, String toRegion)
throws IllegalArgumentException
{
super(windowRef);
this.fromPos = fromPos;
- this.fromRegionId = fromRegion;
+ this.fromRegion = fromRegion;
this.toPos = toPos;
- this.toRegionId = toRegion;
+ this.toRegion = toRegion;
}
public CommandInfo getInfo()
@@ -80,17 +87,67 @@
String windowRegion = windowCtx.getRegionName();
if (windowRef.equals(windowCtx.getId()))
{
- windowCtx.setRegionName(toRegionId);
+ windowCtx.setRegionName(toRegion);
windowCtx.setOrder(toPos);
}
- else if (fromRegionId.equals(windowRegion) && fromPos < windowCtx.getOrder())
+ else if (fromRegion.equals(windowRegion) && fromPos < windowCtx.getOrder())
{
windowCtx.setOrder(windowCtx.getOrder() - 1);
}
- else if (toRegionId.equals(windowRegion) && toPos <= windowCtx.getOrder())
+ else if (toRegion.equals(windowRegion) && toPos <= windowCtx.getOrder())
{
windowCtx.setOrder(windowCtx.getOrder() + 1);
}
}
+
+ try
+ {
+ PortalAuthorizationManagerFactory pamf = getControllerContext().getController().getPortalAuthorizationManagerFactory();
+ PortalAuthorizationManager pam = pamf.getManager();
+ PortalObjectPermission perm = new PortalObjectPermission(windowRef, PortalObjectPermission.DASHBOARD_MASK);
+
+ //
+ if (pam.checkPermission(perm))
+ {
+ for (Iterator i = page.getChildren().iterator(); i.hasNext();)
+ {
+ PortalObject child = (PortalObject)i.next();
+ if (child.getType() == PortalObject.TYPE_WINDOW)
+ {
+ Window window = (Window)child;
+ String windowId = window.getId();
+ String regionId = window.getDeclaredProperty(ThemeConstants.PORTAL_PROP_REGION);
+ String posAsString = window.getDeclaredProperty(ThemeConstants.PORTAL_PROP_ORDER);
+ if (regionId != null && posAsString != null)
+ {
+ try
+ {
+ int pos = Integer.parseInt(posAsString);
+ if (windowRef.equals(windowId))
+ {
+ window.setDeclaredProperty(ThemeConstants.PORTAL_PROP_REGION, toRegion);
+ window.setDeclaredProperty(ThemeConstants.PORTAL_PROP_ORDER, Integer.toString(toPos));
+ }
+ else if (fromRegion.equals(regionId) && fromPos < pos)
+ {
+ window.setDeclaredProperty(ThemeConstants.PORTAL_PROP_ORDER, Integer.toString(toPos - 1));
+ }
+ else if (toRegion.equals(regionId) && toPos <= pos)
+ {
+ window.setDeclaredProperty(ThemeConstants.PORTAL_PROP_ORDER, Integer.toString(toPos + 1));
+ }
+ }
+ catch (NumberFormatException e)
+ {
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (PortalSecurityException e)
+ {
+ log.error("", e);
+ }
}
}
Modified: trunk/core/src/resources/portal-core-sar/META-INF/jboss-service.xml
===================================================================
--- trunk/core/src/resources/portal-core-sar/META-INF/jboss-service.xml 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/core/src/resources/portal-core-sar/META-INF/jboss-service.xml 2006-10-10 00:01:51 UTC (rev 5384)
@@ -111,9 +111,6 @@
xmbean-dd=""
xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
<xmbean/>
- <depends
- optional-attribute-name="PortalAuthorizationManagerFactory"
- proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
</mbean>
<mbean
code="org.jboss.portal.core.aspects.controller.PageNavigationInterceptor"
@@ -740,6 +737,9 @@
<depends
optional-attribute-name="InstanceContainer"
proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
</mbean>
<!-- The ajax controller -->
@@ -767,6 +767,9 @@
<depends
optional-attribute-name="InstanceContainer"
proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
</mbean>
<!-- -->
Modified: trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaRegionRenderer.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaRegionRenderer.java 2006-10-09 21:30:48 UTC (rev 5383)
+++ trunk/theme/src/main/org/jboss/portal/theme/impl/render/dynamic/DynaRegionRenderer.java 2006-10-10 00:01:51 UTC (rev 5384)
@@ -137,7 +137,7 @@
"{\n" +
" var options = {\n" +
" method: 'post',\n" +
- " postBody: 'action=' + action + '&windowId=' + windowId + '&fromPos=' + fromPos + '&fromRegionId=' + fromRegionId + '&toPos=' + toPos + '&toRegionId=' + toRegionId,\n" +
+ " postBody: 'action=' + action + '&windowId=' + windowId + '&fromPos=' + fromPos + '&fromRegion=' + fromRegionId + '&toPos=' + toPos + '&toRegion=' + toRegionId,\n" +
" onSuccess: function(t)\n" +
" {\n" +
" },\n" +
More information about the jboss-svn-commits
mailing list