You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2008/11/07 20:55:07 UTC

svn commit: r712243 - in /myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr: AbstractPPRPanelGroup.java PPRPanelGroupRenderer.java

Author: lu4242
Date: Fri Nov  7 11:55:07 2008
New Revision: 712243

URL: http://svn.apache.org/viewvc?rev=712243&view=rev
Log:
TOMAHAWK-1368 Add to PPRPanelGroup afterUpdateJSHook feature

Modified:
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/AbstractPPRPanelGroup.java
    myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/PPRPanelGroupRenderer.java

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/AbstractPPRPanelGroup.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/AbstractPPRPanelGroup.java?rev=712243&r1=712242&r2=712243&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/AbstractPPRPanelGroup.java (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/AbstractPPRPanelGroup.java Fri Nov  7 11:55:07 2008
@@ -149,7 +149,13 @@
      */
     public abstract String getReplaceMessages();
 
-
+    /**
+     * Javascript code executed after a ppr update has been completed
+     *
+     * @JSFProperty
+     */
+    public abstract String getAfterUpdateJSHook();
+    
     public boolean getInitializationSent(){
         return isInitializationSent();
     }
@@ -162,7 +168,8 @@
      * @JSFProperty
      *   literalOnly = "true"
      *   tagExcluded = "true"
-     */    public abstract boolean isInitializationSent();
+     */
+    public abstract boolean isInitializationSent();
 
     public abstract void setInitializationSent(boolean initializationSent);
 

Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/PPRPanelGroupRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/PPRPanelGroupRenderer.java?rev=712243&r1=712242&r2=712243&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/PPRPanelGroupRenderer.java (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/ppr/PPRPanelGroupRenderer.java Fri Nov  7 11:55:07 2008
@@ -18,16 +18,19 @@
  */
 package org.apache.myfaces.custom.ppr;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.renderkit.html.ext.HtmlGroupRenderer;
-import org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils;
+import java.io.IOException;
+import java.util.Iterator;
 
 import javax.faces.component.UIComponent;
 import javax.faces.component.UIViewRoot;
 import javax.faces.context.FacesContext;
-import java.io.IOException;
-import java.util.Iterator;
+import javax.faces.context.ResponseWriter;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.renderkit.html.ext.HtmlGroupRenderer;
+import org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils;
+import org.apache.myfaces.shared_tomahawk.renderkit.html.HTML;
 
 /**
  * 
@@ -96,6 +99,22 @@
         if (disableRenderChildren == null || disableRenderChildren.booleanValue() == false) {
             RendererUtils.renderChildren(context, component);
         }
+        
+        if (component instanceof PPRPanelGroup)
+        {
+            PPRPanelGroup pprPanelGroup = (PPRPanelGroup) component; 
+            if (PPRSupport.isPartialRequest(context) && pprPanelGroup.getAfterUpdateJSHook() != null)
+            {
+                // Write the afterUpdateJSHook script to CDATA section
+                ResponseWriter writer = context.getResponseWriter();
+                writer.startElement(HTML.SCRIPT_ELEM, pprPanelGroup);
+                writer.writeAttribute(HTML.SCRIPT_TYPE_ATTR,
+                        HTML.SCRIPT_TYPE_TEXT_JAVASCRIPT,
+                        null);
+                writer.writeText(pprPanelGroup.getAfterUpdateJSHook(),null);
+                writer.endElement(HTML.SCRIPT_ELEM);
+            }
+        }
     }
 
     /**