[jboss-svn-commits] JBoss Portal SVN: r5341 - in trunk/theme/src/main/org/jboss/portal/theme: impl/render/div render render/region

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Oct 6 13:18:50 EDT 2006


Author: roy.russo at jboss.com
Date: 2006-10-06 13:18:48 -0400 (Fri, 06 Oct 2006)
New Revision: 5341

Modified:
   trunk/theme/src/main/org/jboss/portal/theme/impl/render/div/DivRegionRenderer.java
   trunk/theme/src/main/org/jboss/portal/theme/render/RenderContext.java
   trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java
   trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java
   trunk/theme/src/main/org/jboss/portal/theme/render/region/UtilityNavigation.java
Log:
JBPORTAL-1069 - rendercontext exposed to dynamic regions

Modified: trunk/theme/src/main/org/jboss/portal/theme/impl/render/div/DivRegionRenderer.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/impl/render/div/DivRegionRenderer.java	2006-10-06 16:49:13 UTC (rev 5340)
+++ trunk/theme/src/main/org/jboss/portal/theme/impl/render/div/DivRegionRenderer.java	2006-10-06 17:18:48 UTC (rev 5341)
@@ -72,14 +72,14 @@
          try
          {
             Class regionClass = Thread.currentThread().getContextClassLoader().loadClass("org.jboss.portal.theme.render.region." + region.getId());
-            Class[] argTypes = {String.class};
+            Class[] argTypes = {RenderContext.class};
             Method m = regionClass.getMethod("render", argTypes);
-            String fragment = (String) m.invoke(regionClass.newInstance(), new Object[]{null});
+            String fragment = (String) m.invoke(regionClass.newInstance(), new Object[]{renderContext});
             markup.append(fragment);
          }
          catch(Exception e)
          {
-            log.error("No region class found for: " + "org.jboss.portal.theme.render.region." + region.getId());
+            log.info("No region class found for: " + "org.jboss.portal.theme.render.region." + region.getId());
          }
       }
       else // process window fragments

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/RenderContext.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/RenderContext.java	2006-10-06 16:49:13 UTC (rev 5340)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/RenderContext.java	2006-10-06 17:18:48 UTC (rev 5341)
@@ -64,7 +64,7 @@
    private void init(PortalLayout layout, Object fragment, HTTPStreamInfo streamInfo, MarkupResult result, ServerRequest request)
    {
       this.renderSet = layout.getServiceInfo().getRenderSet(layout.getLayoutInfo(), streamInfo, result);
-      if (renderSet == null)
+      if(renderSet == null)
       {
          throw new IllegalStateException("No RenderSet determined");
       }
@@ -77,10 +77,10 @@
       this.fragment = fragment;
       this.streamInfo = streamInfo;
 
-      if (fragment != null && fragment instanceof Region)
+      if(fragment != null && fragment instanceof Region)
       {
-         orientation = ((Region)fragment).getOrientation();
-         regionCssId = ((Region)fragment).getCssId();
+         orientation = ((Region) fragment).getOrientation();
+         regionCssId = ((Region) fragment).getCssId();
       }
       else
       {
@@ -105,33 +105,33 @@
     */
    public RenderContext(PortalLayout layout, HTTPStreamInfo streamInfo, MarkupResult result, ServerRequest request)
    {
-      if (layout == null)
+      if(layout == null)
       {
          throw new IllegalArgumentException("no layout provided");
       }
-      if (streamInfo == null)
+      if(streamInfo == null)
       {
          throw new IllegalArgumentException("no stream info provided");
       }
-      if (result == null)
+      if(result == null)
       {
          throw new IllegalArgumentException("no result provided");
       }
-      if (request == null)
+      if(request == null)
       {
          throw new IllegalArgumentException("no request provided");
       }
 
-      if (result instanceof RegionResult)
+      if(result instanceof RegionResult)
       {
          // create the context for this region
-         Region region = ((RegionResult)result).getRegion();
+         Region region = ((RegionResult) result).getRegion();
          init(layout, region, streamInfo, result, request);
       }
-      else if (result instanceof WindowResult)
+      else if(result instanceof WindowResult)
       {
          // create the context for this window only
-         WindowContext windowContext = ((WindowResult)result).getWindowContext();
+         WindowContext windowContext = ((WindowResult) result).getWindowContext();
          init(layout, windowContext, streamInfo, result, request);
       }
       else
@@ -155,11 +155,11 @@
    public RenderContext getContext(Region region, String cssId, RegionOrientation orientation)
    {
       RenderContext context = new RenderContext(this.layout, region, this.streamInfo, this.result, this.request);
-      if (cssId != null)
+      if(cssId != null)
       {
          context.regionCssId = cssId;
       }
-      if (orientation != null)
+      if(orientation != null)
       {
          context.orientation = orientation;
       }
@@ -235,14 +235,14 @@
     */
    public RegionRenderer getRegionRenderer(String renderSetName)
    {
-      if (renderSetName == null)
+      if(renderSetName == null)
       {
          return getRegionRenderer();
       }
 
       PortalRenderSet renderSet = layout.getServiceInfo().getRenderSet(renderSetName, streamInfo.getContentType());
 
-      if (renderSet != null)
+      if(renderSet != null)
       {
          return renderSet.getRegionRenderer();
       }
@@ -270,21 +270,21 @@
    public WindowRenderer getWindowRenderer(WindowResult result)
    {
       String renderSetName = null;
-      if (result != null)
+      if(result != null)
       {
-         renderSetName = (String)result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_WINDOW_RENDERER);
+         renderSetName = (String) result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_WINDOW_RENDERER);
       }
 
-      if (result != null && renderSetName == null)
+      if(result != null && renderSetName == null)
       {
-         renderSetName = (String)result.getPageProperties().get(ThemeConstants.PORTAL_PROP_WINDOW_RENDERER);
+         renderSetName = (String) result.getPageProperties().get(ThemeConstants.PORTAL_PROP_WINDOW_RENDERER);
       }
 
-      if (renderSetName != null)
+      if(renderSetName != null)
       {
          PortalRenderSet renderSet = layout.getServiceInfo().getRenderSet(renderSetName, streamInfo.getContentType());
 
-         if (renderSet != null)
+         if(renderSet != null)
          {
             return renderSet.getWindowRenderer();
          }
@@ -314,21 +314,21 @@
    {
       String renderSetName = null;
 
-      if (result != null)
+      if(result != null)
       {
-         renderSetName = (String)result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_DECORATION_RENDERER);
+         renderSetName = (String) result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_DECORATION_RENDERER);
       }
 
-      if (result != null && renderSetName == null)
+      if(result != null && renderSetName == null)
       {
-         renderSetName = (String)result.getPageProperties().get(ThemeConstants.PORTAL_PROP_DECORATION_RENDERER);
+         renderSetName = (String) result.getPageProperties().get(ThemeConstants.PORTAL_PROP_DECORATION_RENDERER);
       }
 
-      if (renderSetName != null)
+      if(renderSetName != null)
       {
          PortalRenderSet renderSet = layout.getServiceInfo().getRenderSet(renderSetName, streamInfo.getContentType());
 
-         if (renderSet != null)
+         if(renderSet != null)
          {
             return renderSet.getDecorationRenderer();
          }
@@ -359,21 +359,21 @@
    {
       String renderSetName = null;
 
-      if (result != null)
+      if(result != null)
       {
-         renderSetName = (String)result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_PORTLET_RENDERER);
+         renderSetName = (String) result.getWindowProperties().get(ThemeConstants.PORTAL_PROP_PORTLET_RENDERER);
       }
 
-      if (result != null && renderSetName == null)
+      if(result != null && renderSetName == null)
       {
-         renderSetName = (String)result.getPageProperties().get(ThemeConstants.PORTAL_PROP_PORTLET_RENDERER);
+         renderSetName = (String) result.getPageProperties().get(ThemeConstants.PORTAL_PROP_PORTLET_RENDERER);
       }
 
-      if (renderSetName != null)
+      if(renderSetName != null)
       {
          PortalRenderSet renderSet = layout.getServiceInfo().getRenderSet(renderSetName, streamInfo.getContentType());
 
-         if (renderSet != null)
+         if(renderSet != null)
          {
             return renderSet.getPortletRenderer();
          }
@@ -416,14 +416,14 @@
    public String getProperty(WindowResult result, String key)
    {
       String value = null;
-      if (result != null)
+      if(result != null)
       {
-         value = (String)result.getWindowProperties().get(key);
+         value = (String) result.getWindowProperties().get(key);
       }
 
-      if (result != null && value == null)
+      if(result != null && value == null)
       {
-         value = (String)result.getPageProperties().get(key);
+         value = (String) result.getPageProperties().get(key);
       }
 
       return value;
@@ -450,24 +450,24 @@
     * of this context)
     * <p>Currently this context only knows how to render fragments of a page (i.e. region,window), not the entire page.</p>
     *
-    * @throws RenderException
+    * @throws RenderException .
     * @see #getMarkupFragment
     */
    public void render() throws RenderException
    {
-      if (fragment != null)
+      if(fragment != null)
       {
-         if (fragment instanceof WindowContext)
+         if(fragment instanceof WindowContext)
          {
             // render the window
-            WindowContext wc = (WindowContext)fragment;
+            WindowContext wc = (WindowContext) fragment;
             WindowResult windowResult = result.getWindowResult(wc.getId());
-            getWindowRenderer(windowResult).render(this, (WindowContext)fragment, windowResult);
+            getWindowRenderer(windowResult).render(this, (WindowContext) fragment, windowResult);
          }
-         else if (fragment instanceof Region)
+         else if(fragment instanceof Region)
          {
             // render the region
-            getRegionRenderer().render(this, (Region)fragment, result.getWindowContextMap(), result.getWindowResultMap());
+            getRegionRenderer().render(this, (Region) fragment, result.getWindowContextMap(), result.getWindowResultMap());
          }
          else
          {
@@ -480,4 +480,14 @@
          throw new IllegalStateException("This context can only render page fragments, not the entire page");
       }
    }
+
+   public ServerRequest getRequest()
+   {
+      return request;
+   }
+
+   public void setRequest(ServerRequest request)
+   {
+      this.request = request;
+   }
 }
\ No newline at end of file

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java	2006-10-06 16:49:13 UTC (rev 5340)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXFooter.java	2006-10-06 17:18:48 UTC (rev 5341)
@@ -22,6 +22,8 @@
 
 package org.jboss.portal.theme.render.region;
 
+import org.jboss.portal.theme.render.RenderContext;
+
 /**
  * Places necessary sortable and listener scripts in footer for ajax-enablement.
  *
@@ -33,10 +35,10 @@
    /**
     * Returns output for rendering in region tag.
     *
-    * @param s
+    * @param renderContext
     * @return output for rendering
     */
-   public String render(String s)
+   public String render(RenderContext renderContext)
    {
       String ctx = "/portal-ajax";
 

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java	2006-10-06 16:49:13 UTC (rev 5340)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/region/AJAXScripts.java	2006-10-06 17:18:48 UTC (rev 5341)
@@ -22,6 +22,8 @@
 
 package org.jboss.portal.theme.render.region;
 
+import org.jboss.portal.theme.render.RenderContext;
+
 /**
  * Insert needed AJAX scripts, at the top of the page.
  *
@@ -33,25 +35,19 @@
    /**
     * Returns output for rendering in region tag.
     *
-    * @param s
+    * @param renderContext
     * @return output for rendering
     */
-   public String render(String s)
+   public String render(RenderContext renderContext)
    {
       String ctx = "/portal-ajax";
 
       StringBuffer sb = new StringBuffer();
       sb.append("\n\n\n");
 
-      // TODO: remove unecessary libs
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/prototype.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/scriptaculous.js'></script>\n");
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/effects.js'></script>\n");
-/*
-      sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/builder.js'></script>\n");
-      sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/controls.js'></script>\n");
-      sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/slider.js'></script>\n");
-*/
       sb.append("<script type='text/javascript' src='").append(ctx).append("/js/portal/dragdrop.js'></script>\n");
       sb.append("\n\n\n");
 

Modified: trunk/theme/src/main/org/jboss/portal/theme/render/region/UtilityNavigation.java
===================================================================
--- trunk/theme/src/main/org/jboss/portal/theme/render/region/UtilityNavigation.java	2006-10-06 16:49:13 UTC (rev 5340)
+++ trunk/theme/src/main/org/jboss/portal/theme/render/region/UtilityNavigation.java	2006-10-06 17:18:48 UTC (rev 5341)
@@ -22,6 +22,8 @@
 
 package org.jboss.portal.theme.render.region;
 
+import org.jboss.portal.theme.render.RenderContext;
+
 /**
  * This is a static div region, that is not bound to a window.
  *
@@ -33,12 +35,12 @@
    /**
     * Returns output for rendering in region tag.
     *
-    * @param s
+    * @param renderContext
     * @return output for rendering
     */
-   public String render(String s)
+   public String render(RenderContext renderContext)
    {
-      if(s == null)
+      if(renderContext.getRequest().getUser() != null)
       {
          return "<a href=\"#\" class=\"addcontent\">Add Content</a>" +
                 "&nbsp;&nbsp;|&nbsp;&nbsp;" +
@@ -48,7 +50,8 @@
       }
       else
       {
-         return "";
+         //URLFactory urlFactory = new URLFactory();
+         return "<a href=\"/portal/login.jsp\" class=\"addcontent\">Login</a>";
       }
    }
 }




More information about the jboss-svn-commits mailing list