Author: dkulp
Date: Wed Nov 11 16:43:49 2009
New Revision: 834956
URL: http://svn.apache.org/viewvc?rev=834956&view=rev
Log:
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.2.x-fixes/ (props changed)
cxf/branches/2.2.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
Propchange: cxf/branches/2.2.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified:
cxf/branches/2.2.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java?rev=834956&r1=834955&r2=834956&view=diff
==============================================================================
---
cxf/branches/2.2.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
(original)
+++
cxf/branches/2.2.x-fixes/rt/core/src/main/java/org/apache/cxf/endpoint/ServerImpl.java
Wed Nov 11 16:43:49 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);