You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by at...@apache.org on 2009/03/27 03:29:44 UTC
svn commit: r758986 - in
/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl:
AsyncPageAggregatorImpl.java BaseAggregatorImpl.java PageAggregatorImpl.java
Author: ate
Date: Fri Mar 27 02:29:43 2009
New Revision: 758986
URL: http://svn.apache.org/viewvc?rev=758986&view=rev
Log:
Fixing and generalizing maximized window rendering
Modified:
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/BaseAggregatorImpl.java
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java?rev=758986&r1=758985&r2=758986&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/AsyncPageAggregatorImpl.java Fri Mar 27 02:29:43 2009
@@ -50,13 +50,9 @@
{
protected final static Log log = LogFactory.getLog(AsyncPageAggregatorImpl.class);
- protected PortletRenderer renderer;
-
- protected List fallBackContentPathes;
-
public AsyncPageAggregatorImpl(PortletRenderer renderer)
{
- this.renderer = renderer;
+ super(renderer);
}
/**
@@ -95,40 +91,6 @@
releaseBuffers(root, context);
}
- /**
- * <p>
- * renderMaximizedWindow
- * </p>
- *
- * @param context
- * @param page
- * @param layoutContentFragment
- * @param defaultPortletDecorator
- * @param dispatcher
- * @param window
- * @throws FailedToRenderContentFragmentException
- */
- protected void renderMaximizedWindow( RequestContext context, ContentPage page, ContentFragment layoutContentFragment,
- PortletWindow window ) throws FailedToRenderFragmentException
- {
- ContentFragment maxedContentFragment = page.getContentFragmentById(window.getId().toString());
- if (maxedContentFragment != null)
- {
- window.setAttribute(PortalReservedParameters.MAXIMIZED_FRAGMENT_ATTRIBUTE, maxedContentFragment);
- window.setAttribute(PortalReservedParameters.MAXIMIZED_LAYOUT_ATTRIBUTE, page.getRootContentFragment());
- try
- {
- renderer.renderNow(maxedContentFragment, context);
- renderer.renderNow(layoutContentFragment, context);
- }
- catch (Exception e)
- {
- log.error(e.getMessage(), e);
- maxedContentFragment.overrideRenderedContent("Sorry, but we were unable access the requested portlet. Send the following message to your portal admin: "+ e.getMessage());
- }
- }
- }
-
protected void aggregateAndRender(ContentFragment f, RequestContext context, ContentPage page, boolean isRoot,
List sequentialJobs, List parallelJobs, List layoutFragments)
throws FailedToRenderFragmentException
@@ -222,7 +184,6 @@
}
// Start the actual rendering process
- String defaultPortletDecorator = page.getEffectiveDefaultDecorator(ContentFragment.PORTLET);
if (log.isDebugEnabled())
{
log.debug("Rendering portlet fragment: [[name, " + f.getName() + "], [id, " + f.getId() + "]]");
@@ -230,6 +191,4 @@
renderer.renderNow(f, context);
}
-
-
}
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/BaseAggregatorImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/BaseAggregatorImpl.java?rev=758986&r1=758985&r2=758986&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/BaseAggregatorImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/BaseAggregatorImpl.java Fri Mar 27 02:29:43 2009
@@ -18,8 +18,16 @@
import java.util.Iterator;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.jetspeed.PortalReservedParameters;
+import org.apache.jetspeed.aggregator.FailedToRenderFragmentException;
import org.apache.jetspeed.aggregator.PortletContent;
+import org.apache.jetspeed.aggregator.PortletRenderer;
+import org.apache.jetspeed.container.PortletWindow;
+import org.apache.jetspeed.container.window.FailedToCreateWindowException;
import org.apache.jetspeed.om.page.ContentFragment;
+import org.apache.jetspeed.om.page.ContentPage;
import org.apache.jetspeed.request.RequestContext;
/**
@@ -31,6 +39,15 @@
*/
public abstract class BaseAggregatorImpl
{
+ private final static Log log = LogFactory.getLog(BaseAggregatorImpl.class);
+
+ protected PortletRenderer renderer;
+
+ public BaseAggregatorImpl(PortletRenderer renderer)
+ {
+ this.renderer = renderer;
+ }
+
protected void releaseBuffers(ContentFragment f, RequestContext context)
{
if (f.getContentFragments() != null && f.getContentFragments().size() > 0)
@@ -51,4 +68,59 @@
content.release();
}
}
+
+ protected PortletWindow getPortletWindow( ContentFragment fragment, RequestContext requestContext ) throws FailedToCreateWindowException
+ {
+ PortletWindow portletWindow = requestContext.getPortletWindow(fragment);
+
+ if (portletWindow == null)
+ {
+ throw new FailedToCreateWindowException("Portlet Window creation failed for fragment: "
+ + fragment.getId() + ", " + fragment.getName());
+ }
+ return portletWindow;
+ }
+
+ /**
+ * <p>
+ * renderMaximizedWindow
+ * </p>
+ *
+ * @param context
+ * @param page
+ * @param layoutContentFragment
+ * @param defaultPortletDecorator
+ * @param dispatcher
+ * @param window
+ * @throws FailedToRenderContentFragmentException
+ */
+ protected void renderMaximizedWindow( RequestContext context, ContentPage page, ContentFragment layoutContentFragment,
+ PortletWindow window )
+ throws FailedToRenderFragmentException
+ {
+ try
+ {
+ PortletWindow layoutWindow = getPortletWindow(layoutContentFragment, context);
+
+ layoutWindow.setAttribute(PortalReservedParameters.MAXIMIZED_FRAGMENT_ATTRIBUTE, window.getFragment());
+ layoutWindow.setAttribute(PortalReservedParameters.MAXIMIZED_LAYOUT_ATTRIBUTE, page.getRootContentFragment());
+
+ try
+ {
+ renderer.renderNow(window.getFragment(), context);
+ renderer.renderNow(layoutContentFragment, context);
+
+ }
+ catch (Exception e)
+ {
+ log.error(e.getMessage(), e);
+ window.getFragment().overrideRenderedContent("Sorry, but we were unable access the requested portlet. Send the following message to your portal admin: "+ e.getMessage());
+ }
+ }
+ catch (FailedToCreateWindowException e)
+ {
+ log.error(e.getMessage(), e);
+ throw new FailedToRenderFragmentException(e.getMessage());
+ }
+ }
}
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java?rev=758986&r1=758985&r2=758986&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/aggregator/impl/PageAggregatorImpl.java Fri Mar 27 02:29:43 2009
@@ -19,8 +19,6 @@
import java.io.IOException;
import java.util.Iterator;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.apache.jetspeed.PortalReservedParameters;
import org.apache.jetspeed.aggregator.FailedToRenderFragmentException;
import org.apache.jetspeed.aggregator.PageAggregator;
@@ -42,12 +40,9 @@
*/
public class PageAggregatorImpl extends BaseAggregatorImpl implements PageAggregator
{
- private final static Log log = LogFactory.getLog(PageAggregatorImpl.class);
- private PortletRenderer renderer;
-
public PageAggregatorImpl( PortletRenderer renderer)
{
- this.renderer = renderer;
+ super(renderer);
}
/**
@@ -87,49 +82,6 @@
releaseBuffers(root, context);
}
- /**
- * <p>
- * renderMaximizedWindow
- * </p>
- *
- * @param context
- * @param page
- * @param layoutContentFragment
- * @param defaultPortletDecorator
- * @param dispatcher
- * @param window
- * @throws FailedToRenderContentFragmentException
- */
- protected void renderMaximizedWindow( RequestContext context, ContentPage page, ContentFragment layoutContentFragment,
- PortletWindow window ) throws FailedToRenderFragmentException
- {
- ContentFragment maxedContentFragment = page.getContentFragmentById(window.getId().toString());
- if (maxedContentFragment != null)
- {
- window.setAttribute(PortalReservedParameters.MAXIMIZED_FRAGMENT_ATTRIBUTE, maxedContentFragment);
- window.setAttribute(PortalReservedParameters.MAXIMIZED_LAYOUT_ATTRIBUTE, page.getRootContentFragment());
-
- try
- {
- renderer.renderNow(maxedContentFragment, context);
- renderer.renderNow(layoutContentFragment, context);
-
- }
- catch (Exception e)
- {
- log.error(e.getMessage(), e);
- maxedContentFragment.overrideRenderedContent("Sorry, but we were unable access the requested portlet. Send the following message to your portal admin: "+ e.getMessage());
- }
- }
- else
- {
- String message = "Maximized fragment not found.";
- log.error(message);
- if (maxedContentFragment != null)
- maxedContentFragment.overrideRenderedContent("Sorry, but we were unable access the requested portlet. Send the following message to your portal admin: "+ message);
- }
- }
-
protected void aggregateAndRender( ContentFragment f, RequestContext context, ContentPage page )
throws FailedToRenderFragmentException
{
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org