Author: fhanik
Date: Tue Mar 28 10:22:41 2006
New Revision: 389569

URL: http://svn.apache.org/viewcvs?rev=389569&view=rev
Log:
Added in a completion notification

Modified:
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/ErrorHandler.java
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/ErrorHandler.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/ErrorHandler.java?rev=389569&r1=389568&r2=389569&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/ErrorHandler.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/ErrorHandler.java
 Tue Mar 28 10:22:41 2006
@@ -25,6 +25,19 @@
  */
 public interface ErrorHandler {
     
+    /**
+     * Invoked if the message is dispatched asynch, and an error occurs
+     * @param x Exception
+     * @param destination Member[]
+     * @param msg Serializable
+     */
     public void handleError(Exception x, Member[] destination, Serializable 
msg);
+    
+    /**
+     * Invoked when the message has been sent.
+     * @param destination Member[]
+     * @param msg Serializable
+     */
+    public void handleCompletion(Member[] destination, Serializable msg);
     
 }

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java?rev=389569&r1=389568&r2=389569&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java
 Tue Mar 28 10:22:41 2006
@@ -122,9 +122,18 @@
                 Member[] destination = link.getDestination();
                 try {
                     super.sendMessage(destination,msg,null);
+                    try {
+                        if ( link.getHandler() != null ) 
link.getHandler().handleCompletion(destination,msg); 
+                    } catch ( Exception ex ) {
+                        log.error("Unable to report back completed 
message.",ex);
+                    }
                 } catch ( Exception x ) {
                     if ( log.isDebugEnabled() ) log.debug("Error while 
processing async message.",x);
-                    if ( link.getHandler() != null ) 
link.getHandler().handleError(x,destination,msg);
+                    try {
+                        if (link.getHandler() != null) 
link.getHandler().handleError(x, destination, msg);
+                    } catch ( Exception ex ) {
+                        log.error("Unable to report back error message.",ex);
+                    }
                 } finally {
                     currentSize.addAndGet(-msg.getMessage().getLength());
                     link = link.next();



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to