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 2013/06/17 18:19:39 UTC

svn commit: r1493833 - /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java

Author: lu4242
Date: Mon Jun 17 16:19:39 2013
New Revision: 1493833

URL: http://svn.apache.org/r1493833
Log:
MYFACES-3683 Implement AjaxBehavior resetValues and delay (thanks to Dora Rajappan for provide this patch)

Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java?rev=1493833&r1=1493832&r2=1493833&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java Mon Jun 17 16:19:39 2013
@@ -160,6 +160,10 @@ public class AjaxHandler extends TagHand
                          deferredValueType = "java.lang.String")
     private final TagAttribute _delay;
     
+    @JSFFaceletAttribute(name = "resetValues", className = "javax.el.ValueExpression",
+            deferredValueType = "java.lang.Boolean")
+    private final TagAttribute _resetValues;
+    
     private final boolean _wrapMode;
 
     public AjaxHandler(TagConfig config)
@@ -174,6 +178,7 @@ public class AjaxHandler extends TagHand
         _onevent = getAttribute("onevent");
         _render = getAttribute("render");
         _delay = getAttribute("delay");
+        _resetValues = getAttribute("resetValues");
         // According to the spec, this tag works in two different ways:
         // 1. Apply an ajax behavior for a selected component in this way
         //    <x:component><f:ajax ..../></x:component>
@@ -469,6 +474,19 @@ public class AjaxHandler extends TagHand
                     .getValueExpression(faceletContext, String.class));
             }
         }
+       if (_resetValues != null)
+        {
+            if (_resetValues.isLiteral())
+            {
+                ajaxBehavior
+                        .setResetValues(_resetValues.getBoolean(faceletContext));
+            }
+            else
+            {
+                ajaxBehavior.setValueExpression("resetValues", _resetValues
+                        .getValueExpression(faceletContext, Boolean.class));
+            }
+        }
         cvh.addClientBehavior(eventName, ajaxBehavior);
     }