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(); }
