Author: nbelaevski
Date: 2008-11-21 13:32:34 -0500 (Fri, 21 Nov 2008)
New Revision: 11297
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/AjaxRendererUtils.java
trunk/framework/impl/src/main/javascript/ajaxjsf/queue.js
Log:
https://jira.jboss.org/jira/browse/RF-4960
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/AjaxRendererUtils.java
===================================================================
---
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/AjaxRendererUtils.java 2008-11-21
17:59:48 UTC (rev 11296)
+++
trunk/framework/impl/src/main/java/org/ajax4jsf/renderkit/AjaxRendererUtils.java 2008-11-21
18:32:34 UTC (rev 11297)
@@ -118,6 +118,8 @@
public static final String AJAX_ABORT_ATTR = "ignoreDupResponses";
public static final String AJAX_SINGLE_PARAMETER_NAME = "ajaxSingle";
+
+ public static final String SIMILARITY_GROUPING_ID_ATTR =
"similarityGroupingId";
/**
* Static class - protect constructor TODO - make as subclass of chameleon
@@ -341,7 +343,11 @@
options.put("namespace", namespace);
}
- options.put("requestId", clientId);
+ String similarityGroupingId = (String)
componentAttributes.get(SIMILARITY_GROUPING_ID_ATTR);
+ if (similarityGroupingId == null || similarityGroupingId.length() == 0) {
+ similarityGroupingId = clientId;
+ }
+ options.put(SIMILARITY_GROUPING_ID_ATTR, similarityGroupingId);
// request timeout.
Integer timeout = (Integer) componentAttributes.get("timeout");
Modified: trunk/framework/impl/src/main/javascript/ajaxjsf/queue.js
===================================================================
--- trunk/framework/impl/src/main/javascript/ajaxjsf/queue.js 2008-11-21 17:59:48 UTC (rev
11296)
+++ trunk/framework/impl/src/main/javascript/ajaxjsf/queue.js 2008-11-21 18:32:34 UTC (rev
11297)
@@ -28,13 +28,13 @@
createRequest: function(data) {
this.request = data.submit();
- this.requestId = data.getRequestId();
+ this.similarityGroupingId = data.getSimilarityGroupingId();
this.request.shouldNotifyQueue = true;
},
clearRequest: function() {
this.request = undefined;
- this.requestId = undefined;
+ this.similarityGroupingId = undefined;
},
getSize: function() {
@@ -104,7 +104,7 @@
},
abortDupResponses: function(data) {
- if (!this.hasNext() && data.getRequestId() == this.requestId) {
+ if (!this.hasNext() && data.getSimilarityGroupingId() ==
this.similarityGroupingId) {
this.abortCurrentRequest();
}
}
@@ -169,7 +169,7 @@
this.data = undefined;
this.eventsCounter = 0;
- this.requestId = undefined;
+ this.similarityGroupingId = undefined;
this.delayPassed = false;
return data;
@@ -186,9 +186,9 @@
this.pipeline.abortDupResponses(data);
}
- var requestId = data.getRequestId();
+ var similarityGroupingId = data.getSimilarityGroupingId();
- if (this.requestId == requestId) {
+ if (this.similarityGroupingId == similarityGroupingId) {
this.data = data;
data.setEventsCounter(++this.eventsCounter);
@@ -236,7 +236,7 @@
if (!newDataHandled) {
this.data = data;
- this.requestId = requestId;
+ this.similarityGroupingId = similarityGroupingId;
this.startRequestDelay();
}
}
@@ -447,8 +447,8 @@
return request;
},
- getRequestId: function() {
- return this.options.requestId;
+ getSimilarityGroupingId: function() {
+ return this.options.similarityGroupingId;
},
getRequestDelay: function() {
@@ -482,7 +482,7 @@
// LOG.debug("Delay for request not passed yet, have to wait");
// LOG.debug("Queue '" + this.name + "' is empty, nothing to
submit");
// LOG.debug("Request in queue '" + this.name + "' is active now,
wait until its completion");
-// LOG.debug("New event added to queue '" + this.name + "'. Queue
requestId changed to " + requestId);
+// LOG.debug("New event added to queue '" + this.name + "'. Queue
similarityGroupingId changed to " + similarityGroupingId);
var extendOptions = function(options) {
var opts = {};