Author: dkulp
Date: Thu Nov 12 01:57:00 2009
New Revision: 835188

URL: http://svn.apache.org/viewvc?rev=835188&view=rev
Log:
Merged revisions 834956 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/branches/2.2.x-fixes

................
  r834956 | dkulp | 2009-11-11 11:43:49 -0500 (Wed, 11 Nov 2009) | 9 lines
  
  Merged revisions 834761 via svnmerge from 
  https://svn.apache.org/repos/asf/cxf/trunk
  
  ........
    r834761 | dkulp | 2009-11-10 23:34:13 -0500 (Tue, 10 Nov 2009) | 1 line
    
    [CXF-1850] Fix shutdown of multiobserver
  ........
................

Modified:
    cxf/branches/2.1.x-fixes/   (props changed)
    
cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java

Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: 
cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
URL: 
http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java?rev=835188&r1=835187&r2=835188&view=diff
==============================================================================
--- 
cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
 (original)
+++ 
cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
 Thu Nov 12 01:57:00 2009
@@ -138,15 +138,17 @@
         if (mgr != null) {
             mgr.stopServer(this);
         }
-        
+
         MessageObserver mo = getDestination().getMessageObserver();
         if (mo instanceof MultipleEndpointObserver) {
-            ((MultipleEndpointObserver) mo).getEndpoints().remove(endpoint);
-        } else {
-            getDestination().setMessageObserver(null);
-            getDestination().shutdown();
+            ((MultipleEndpointObserver)mo).getEndpoints().remove(endpoint);
+            if (!((MultipleEndpointObserver)mo).getEndpoints().isEmpty()) {
+                return;
+            }
         }
-        
+        getDestination().setMessageObserver(null);
+        getDestination().shutdown();
+
         if (null != serverRegistry) {
             LOG.fine("unregister the server to serverRegistry ");
             serverRegistry.unregister(this);


Reply via email to