Author: ivaynberg
Date: Thu Jan 25 10:27:46 2007
New Revision: 499881
URL: http://svn.apache.org/viewvc?view=rev&rev=499881
Log:
WICKET-234: tweak
Modified:
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
Modified:
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java?view=diff&rev=499881&r1=499880&r2=499881
==============================================================================
---
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
(original)
+++
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
Thu Jan 25 10:27:46 2007
@@ -442,17 +442,7 @@
response.write("\"?>");
response.write("<ajax-response>");
- // invoke onbeforerespond event on listeners
- if (listeners != null)
- {
- final Map components =
Collections.unmodifiableMap(markupIdToComponent);
-
- Iterator it = listeners.iterator();
- while (it.hasNext())
- {
-
((IListener)it.next()).onBeforeRespond(components, this);
- }
- }
+ fireOnBeforeRespondListeners();
// normal behavior
Iterator it = prependJavascripts.iterator();
@@ -465,6 +455,8 @@
// process added components
respondComponents(response);
+ fireOnAfterRespondListeners(response);
+
it = appendJavascripts.iterator();
while (it.hasNext())
{
@@ -472,29 +464,6 @@
respondInvocation(response, js);
}
- // invoke onafterresponse event on listeners
- if (listeners != null)
- {
- final Map components =
Collections.unmodifiableMap(markupIdToComponent);
-
- // create response that will be used by
listeners to append
- // javascript
- final IJavascriptResponse jsresponse = new
IJavascriptResponse()
- {
-
- public void addJavascript(String script)
- {
- respondInvocation(response,
script);
- }
-
- };
-
- it = listeners.iterator();
- while (it.hasNext())
- {
-
((IListener)it.next()).onAfterRespond(components, jsresponse);
- }
- }
response.write("</ajax-response>");
}
@@ -505,6 +474,48 @@
// of response will cause any javascript failureHandler
to be
// invoked
LOG.error("Error while responding to an AJAX request: "
+ toString(), ex);
+ }
+ }
+
+ private void fireOnBeforeRespondListeners()
+ {
+ if (listeners != null)
+ {
+ final Map components =
Collections.unmodifiableMap(markupIdToComponent);
+
+ Iterator it = listeners.iterator();
+ while (it.hasNext())
+ {
+
((IListener)it.next()).onBeforeRespond(components, this);
+ }
+ }
+ }
+
+ private void fireOnAfterRespondListeners(final WebResponse response)
+ {
+ Iterator it;
+ // invoke onafterresponse event on listeners
+ if (listeners != null)
+ {
+ final Map components =
Collections.unmodifiableMap(markupIdToComponent);
+
+ // create response that will be used by listeners to
append
+ // javascript
+ final IJavascriptResponse jsresponse = new
IJavascriptResponse()
+ {
+
+ public void addJavascript(String script)
+ {
+ respondInvocation(response, script);
+ }
+
+ };
+
+ it = listeners.iterator();
+ while (it.hasNext())
+ {
+
((IListener)it.next()).onAfterRespond(components, jsresponse);
+ }
}
}