Author: ivaynberg
Date: Thu Jan 25 10:28:53 2007
New Revision: 499883

URL: http://svn.apache.org/viewvc?view=rev&rev=499883
Log:
WICKET-234: tweak

Modified:
    
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java

Modified: 
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
URL: 
http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java?view=diff&rev=499883&r1=499882&r2=499883
==============================================================================
--- 
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java 
(original)
+++ 
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java 
Thu Jan 25 10:28:53 2007
@@ -327,16 +327,7 @@
                        response.write("<ajax-response>");
 
                        // invoke onbeforerespond event on listeners
-                       if (listeners != null)
-                       {
-                               final Map<String, Component> components = 
Collections
-                                               
.unmodifiableMap(markupIdToComponent);
-
-                               for (IListener listener : listeners)
-                               {
-                                       listener.onBeforeRespond(components, 
this);
-                               }
-                       }
+                       fireOnBeforeRespondListeners();
 
                        // normal behavior
                        for (String js : prependJavascripts)
@@ -346,36 +337,13 @@
 
                        respondComponents(response);
 
+                       fireOnAfterRespondListeners(response);
+
                        for (String js : appendJavascripts)
                        {
                                respondInvocation(response, js);
                        }
 
-                       // invoke onafterresponse event on listeners
-                       if (listeners != null)
-                       {
-                               final Map<String, Component> 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);
-                                       }
-
-                               };
-
-                               for (IListener listener : listeners)
-                               {
-                                       listener.onAfterRespond(components, 
jsresponse);
-                               }
-                       }
-
-
                        response.write("</ajax-response>");
                }
                catch (RuntimeException ex)
@@ -388,6 +356,46 @@
                finally
                {
                        requestCycle.setResponse(response);
+               }
+       }
+
+       private void fireOnBeforeRespondListeners()
+       {
+               if (listeners != null)
+               {
+                       final Map<String, Component> components = Collections
+                                       .unmodifiableMap(markupIdToComponent);
+
+                       for (IListener listener : listeners)
+                       {
+                               listener.onBeforeRespond(components, this);
+                       }
+               }
+       }
+
+       private void fireOnAfterRespondListeners(final WebResponse response)
+       {
+               if (listeners != null)
+               {
+                       final Map<String, Component> 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);
+                               }
+
+                       };
+
+                       for (IListener listener : listeners)
+                       {
+                               listener.onAfterRespond(components, jsresponse);
+                       }
                }
        }
 


Reply via email to