Author: ningjiang
Date: Thu Mar 15 03:37:48 2012
New Revision: 1300807

URL: http://svn.apache.org/viewvc?rev=1300807&view=rev
Log:
Merged revisions 1300806 via svnmerge from 
https://svn.apache.org/repos/asf/camel/branches/camel-2.9.x

................
  r1300806 | ningjiang | 2012-03-15 11:10:53 +0800 (Thu, 15 Mar 2012) | 9 lines
  
  Merged revisions 1300805 via svnmerge from 
  https://svn.apache.org/repos/asf/camel/trunk
  
  ........
    r1300805 | ningjiang | 2012-03-15 11:00:40 +0800 (Thu, 15 Mar 2012) | 1 line
    
    CAMEL-5087 Let camel-cometd componnet supports multiple endpoints with 
different ports
  ........
................

Added:
    
camel/branches/camel-2.8.x/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java
      - copied unchanged from r1300806, 
camel/branches/camel-2.9.x/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java
Modified:
    camel/branches/camel-2.8.x/   (props changed)
    
camel/branches/camel-2.8.x/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar 15 03:37:48 2012
@@ -1,2 +1,2 @@
-/camel/branches/camel-2.9.x:1227549,1228229,1229567,1234054,1236672,1238942,1240157,1241006,1241489,1243052,1243058,1244875,1244877,1291871,1292116,1292389,1292726,1292769,1293082,1293935,1294044,1294589,1294914,1294978,1299165
-/camel/trunk:1226860,1227540,1228223,1229565,1234043,1236667,1238937,1240025,1240950,1240967,1241482,1243046,1243057,1244870,1244872,1291848,1292114,1292384,1292725,1292767,1293079,1293828,1293855,1294588,1294909,1294976,1298993
+/camel/branches/camel-2.9.x:1227549,1228229,1229567,1234054,1236672,1238942,1240157,1241006,1241489,1243052,1243058,1244875,1244877,1291871,1292116,1292389,1292726,1292769,1293082,1293935,1294044,1294589,1294914,1294978,1299165,1300806
+/camel/trunk:1226860,1227540,1228223,1229565,1234043,1236667,1238937,1240025,1240950,1240967,1241482,1243046,1243057,1244870,1244872,1291848,1292114,1292384,1292725,1292767,1293079,1293828,1293855,1294588,1294909,1294976,1298993,1300805

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: 
camel/branches/camel-2.8.x/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java?rev=1300807&r1=1300806&r2=1300807&view=diff
==============================================================================
--- 
camel/branches/camel-2.8.x/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
 (original)
+++ 
camel/branches/camel-2.8.x/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
 Thu Mar 15 03:37:48 2012
@@ -49,8 +49,7 @@ public class CometdComponent extends Def
     private static final transient Logger LOG = 
LoggerFactory.getLogger(CometdComponent.class);
 
     private final Map<String, ConnectorRef> connectors = new 
LinkedHashMap<String, ConnectorRef>();
-
-    private Server server;
+   
     private String sslKeyPassword;
     private String sslPassword;
     private String sslKeystore;
@@ -61,11 +60,13 @@ public class CometdComponent extends Def
     class ConnectorRef {
         Connector connector;
         CometdServlet servlet;
+        Server server;
         int refCount;
 
-        public ConnectorRef(Connector connector, CometdServlet servlet) {
+        public ConnectorRef(Connector connector, CometdServlet servlet, Server 
server) {
             this.connector = connector;
             this.servlet = servlet;
+            this.server = server;
             increment();
         }
 
@@ -110,11 +111,12 @@ public class CometdComponent extends Def
                     LOG.warn("You use localhost interface! It means that no 
external connections will be available."
                             + " Don't you want to use 0.0.0.0 instead (all 
network interfaces)?");
                 }
-                getServer().addConnector(connector);
+                Server server = createServer();
+                server.addConnector(connector);
 
-                CometdServlet servlet = createServletForConnector(connector, 
endpoint);
-                connectorRef = new ConnectorRef(connector, servlet);
-                getServer().start();
+                CometdServlet servlet = createServletForConnector(server, 
connector, endpoint);
+                connectorRef = new ConnectorRef(connector, servlet, server);
+                server.start();
 
                 connectors.put(connectorKey, connectorRef);
             } else {
@@ -148,15 +150,16 @@ public class CometdComponent extends Def
             ConnectorRef connectorRef = connectors.get(connectorKey);
             if (connectorRef != null) {
                 if (connectorRef.decrement() == 0) {
-                    getServer().removeConnector(connectorRef.connector);
+                    
connectorRef.server.removeConnector(connectorRef.connector);
                     connectorRef.connector.stop();
+                    connectorRef.server.stop();
                     connectors.remove(connectorKey);
                 }
             }
         }
     }
 
-    protected CometdServlet createServletForConnector(Connector connector, 
CometdEndpoint endpoint) throws Exception {
+    protected CometdServlet createServletForConnector(Server server, Connector 
connector, CometdEndpoint endpoint) throws Exception {
         CometdServlet servlet = new CometdServlet();
 
         ServletContextHandler context = new ServletContextHandler(server, "/", 
ServletContextHandler.NO_SECURITY | ServletContextHandler.NO_SESSIONS);
@@ -211,17 +214,6 @@ public class CometdComponent extends Def
         return sslSocketConnector;
     }
 
-    public Server getServer() throws Exception {
-        if (server == null) {
-            server = createServer();
-        }
-        return server;
-    }
-
-    public void setServer(Server server) {
-        this.server = server;
-    }
-
     public String getSslKeyPassword() {
         return sslKeyPassword;
     }
@@ -282,10 +274,7 @@ public class CometdComponent extends Def
             connectorRef.connector.stop();
         }
         connectors.clear();
-
-        if (server != null) {
-            server.stop();
-        }
+       
         super.doStop();
     }
 


Reply via email to