Author: nbelaevski
Date: 2011-02-04 17:33:02 -0500 (Fri, 04 Feb 2011)
New Revision: 21474
Modified:
trunk/core/api/src/main/java/org/richfaces/renderkit/AjaxConstants.java
trunk/core/impl/src/main/java/org/richfaces/context/ComponentCallback.java
trunk/core/impl/src/main/java/org/richfaces/context/ExecuteComponentCallback.java
trunk/core/impl/src/main/java/org/richfaces/context/RenderComponentCallback.java
Log:
https://issues.jboss.org/browse/RF-10429
Modified: trunk/core/api/src/main/java/org/richfaces/renderkit/AjaxConstants.java
===================================================================
--- trunk/core/api/src/main/java/org/richfaces/renderkit/AjaxConstants.java 2011-02-04
20:37:34 UTC (rev 21473)
+++ trunk/core/api/src/main/java/org/richfaces/renderkit/AjaxConstants.java 2011-02-04
22:33:02 UTC (rev 21474)
@@ -21,6 +21,7 @@
*/
package org.richfaces.renderkit;
+
/**
* @author Nick Belaevski
*
@@ -30,7 +31,6 @@
public static final String ALL = "@all";
public static final String FORM = "@form";
public static final String THIS = "@this";
- public static final String REGION = "@region";
public static final String NONE = "@none";
public static final String BEHAVIOR_EVENT_PARAMETER =
"javax.faces.behavior.event";
Modified: trunk/core/impl/src/main/java/org/richfaces/context/ComponentCallback.java
===================================================================
--- trunk/core/impl/src/main/java/org/richfaces/context/ComponentCallback.java 2011-02-04
20:37:34 UTC (rev 21473)
+++ trunk/core/impl/src/main/java/org/richfaces/context/ComponentCallback.java 2011-02-04
22:33:02 UTC (rev 21474)
@@ -35,7 +35,6 @@
import org.ajax4jsf.component.AjaxClientBehavior;
import org.richfaces.renderkit.util.CoreAjaxRendererUtils;
-import org.richfaces.renderkit.util.CoreRendererUtils;
/**
* User: akolonitsky
@@ -77,19 +76,14 @@
return null;
}
- protected Collection<String> resolveComponents(Object value, UIComponent
target, String defaultValue) {
+ protected Collection<String> toCollection(Object value) {
//TODO - unit tests check for "@none" element
- Collection<String> ids = CoreAjaxRendererUtils.asIdsSet(value);
- if (ids == null) {
- ids = new LinkedHashSet<String>(1);
+ Collection<String> result = CoreAjaxRendererUtils.asIdsSet(value);
+ if (result == null) {
+ result = new LinkedHashSet<String>(1);
}
- if (ids.isEmpty() && defaultValue != null) {
- // asSet() returns copy of original set and we're free to modify it
- ids.add(defaultValue);
- }
-
- return CoreRendererUtils.INSTANCE.findComponentsFor(facesContext, target, ids);
+ return result;
}
protected abstract void doVisit(UIComponent target, AjaxClientBehavior behavior);
Modified:
trunk/core/impl/src/main/java/org/richfaces/context/ExecuteComponentCallback.java
===================================================================
---
trunk/core/impl/src/main/java/org/richfaces/context/ExecuteComponentCallback.java 2011-02-04
20:37:34 UTC (rev 21473)
+++
trunk/core/impl/src/main/java/org/richfaces/context/ExecuteComponentCallback.java 2011-02-04
22:33:02 UTC (rev 21474)
@@ -29,6 +29,8 @@
import org.ajax4jsf.component.AjaxClientBehavior;
import org.richfaces.component.AjaxContainer;
+import org.richfaces.renderkit.AjaxConstants;
+import org.richfaces.renderkit.util.CoreRendererUtils;
/**
* @author akolonitsky
@@ -53,7 +55,15 @@
value = target.getAttributes().get("execute");
}
- executeIds = resolveComponents(value, target, AjaxContainer.META_CLIENT_ID);
+ Collection<String> unresolvedExecuteIds = toCollection(value);
+ //toCollection() returns copy of original set and we're free to modify it
+ if (unresolvedExecuteIds.isEmpty()) {
+ unresolvedExecuteIds.add(AjaxContainer.META_CLIENT_ID);
+ } else if (!unresolvedExecuteIds.contains(AjaxContainer.META_CLIENT_ID)) {
+ unresolvedExecuteIds.add(AjaxConstants.THIS);
+ }
+
+ executeIds = CoreRendererUtils.INSTANCE.findComponentsFor(facesContext, target,
unresolvedExecuteIds);
}
public Collection<String> getExecuteIds() {
Modified:
trunk/core/impl/src/main/java/org/richfaces/context/RenderComponentCallback.java
===================================================================
---
trunk/core/impl/src/main/java/org/richfaces/context/RenderComponentCallback.java 2011-02-04
20:37:34 UTC (rev 21473)
+++
trunk/core/impl/src/main/java/org/richfaces/context/RenderComponentCallback.java 2011-02-04
22:33:02 UTC (rev 21474)
@@ -29,6 +29,7 @@
import org.ajax4jsf.component.AjaxClientBehavior;
import org.richfaces.renderkit.util.CoreAjaxRendererUtils;
+import org.richfaces.renderkit.util.CoreRendererUtils;
/**
* @author akolonitsky
@@ -87,7 +88,9 @@
data = CoreAjaxRendererUtils.getAjaxData(target);
}
- renderIds = resolveComponents(renderValue, target, null);
+ Collection<String> unresolvedRenderIds = toCollection(renderValue);
+ //NB: toCollection() returns copy of original set and we're free to modify it
- not used here
+ renderIds = CoreRendererUtils.INSTANCE.findComponentsFor(facesContext, target,
unresolvedRenderIds);
}
}