Update of 
/var/cvs/contributions/CMSContainer/cmsc/portal/src/java/com/finalist/pluto
In directory 
james.mmbase.org:/tmp/cvs-serv790/cmsc/portal/src/java/com/finalist/pluto

Modified Files:
        PortletContainerImpl.java 
Log Message:
CMSC-863 HttpSessions are used when not necessary and created for useragents 
which do not maintain a session


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/portal/src/java/com/finalist/pluto
See also: http://www.mmbase.org/jira/browse/CMSC-863


Index: PortletContainerImpl.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer/cmsc/portal/src/java/com/finalist/pluto/PortletContainerImpl.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- PortletContainerImpl.java   26 Nov 2007 11:43:41 -0000      1.5
+++ PortletContainerImpl.java   21 Apr 2008 10:11:51 -0000      1.6
@@ -37,9 +37,10 @@
 import org.apache.pluto.om.window.PortletWindow;
 import org.apache.pluto.services.PortletContainerEnvironment;
 
-import com.finalist.cmsc.beans.om.Page;
+import com.finalist.cmsc.beans.om.*;
 import com.finalist.cmsc.beans.om.Portlet;
-import com.finalist.cmsc.portalImpl.registry.PortalRegistry;
+import com.finalist.cmsc.portalImpl.PortalConstants;
+import com.finalist.cmsc.services.sitemanagement.SiteManagement;
 import com.finalist.cmsc.services.sitemanagement.SiteManagementAdmin;
 import com.finalist.pluto.portalImpl.aggregation.*;
 import com.finalist.pluto.portalImpl.core.CmscPortletMode;
@@ -106,27 +107,22 @@
          if (m != null && m.equals(CmscPortletMode.DELETE)) {
             log.debug("CMSC Portlet DELETE action");
 
-            ObjectID id = portletWindow.getId();
-            PortalRegistry registry = 
PortalRegistry.getPortalRegistry(servletRequest);
-
-            ScreenFragment screenFragment = registry.getScreen();
-            Fragment fragment = screenFragment.getFragment(id.toString());
-
-            if (fragment instanceof EmptyFragment) {
+            PortletFragment portletFragment = (PortletFragment) 
servletRequest.getAttribute(PortalConstants.FRAGMENT);
+            if (portletFragment instanceof EmptyFragment) {
                log.debug("Can't delete empty portlets of this type.");
             }
-            else if (fragment instanceof PortletFragment) {
-               PortletFragment portletFragment = (PortletFragment) fragment;
-               Page page = screenFragment.getPage();
+            else {
+               String pageId = (String) 
servletRequest.getAttribute(PortalConstants.CMSC_OM_PAGE_ID);
+               NavigationItem item = 
SiteManagement.getNavigationItem(Integer.valueOf(pageId));
+               if (item instanceof Page) {
+                   Page page = (Page) item;
                Portlet portlet = portletFragment.getPortlet();
                String layoutId = portletFragment.getKey();
                SiteManagementAdmin.deleteScreenPortlet(page, portlet, 
layoutId);
             }
-            else {
-               log.debug("Can't delete portlets of this type " + 
fragment.getClass().getName());
-            }
             actionResponse.setPortletMode(PortletMode.VIEW);
          }
+         }
          else {
             // call action() at the portlet
             invoker.action(actionRequest, actionResponse);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to