activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chir...@apache.org
Subject svn commit: r1083885 - in /activemq/activemq-apollo/trunk: apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/ apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/ apollo-cli/src/main/resources/org/apache/activemq/apollo/cl...
Date Mon, 21 Mar 2011 18:07:44 GMT
Author: chirino
Date: Mon Mar 21 18:07:43 2011
New Revision: 1083885

URL: http://svn.apache.org/viewvc?rev=1083885&view=rev
Log:
- Better IPv6 support
- make the web_admin element behave more like the connector element.

Modified:
    activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
    activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/JettyWebServer.scala
    activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo-ssl.xml
    activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo.xml
    activemq/activemq-apollo/trunk/apollo-cli/src/main/scala/org/apache/activemq/apollo/cli/commands/Stop.scala
    activemq/activemq-apollo/trunk/apollo-cli/src/test/resources/example-broker/etc/apollo.xml
    activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/WebAdminDTO.java
    activemq/activemq-apollo/trunk/apollo-dto/src/test/java/org/apache/activemq/apollo/dto/XmlCodecTest.java
    activemq/activemq-apollo/trunk/apollo-dto/src/test/resources/org/apache/activemq/apollo/dto/XmlCodecTest.xml
    activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-bdb.xml
    activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-secure.xml
    activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl-secure.xml
    activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl.xml
    activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp.xml
    activemq/activemq-apollo/trunk/apollo-tcp/src/main/java/org/apache/activemq/apollo/transport/tcp/TcpTransportServer.java
    activemq/activemq-apollo/trunk/apollo-website/src/documentation/user-manual.md

Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
(original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
Mon Mar 21 18:07:43 2011
@@ -41,7 +41,7 @@ object Connector extends Log {
   def defaultConfig() = {
     val rc = new ConnectorDTO
     rc.id = "default"
-    rc.bind = "tcp://0.0.0.0:61613"
+    rc.bind = "tcp://[::]:61613"
     rc.protocol = "multi"
     rc.connection_limit = 1000
     rc

Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/JettyWebServer.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/JettyWebServer.scala?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/JettyWebServer.scala
(original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/jetty/JettyWebServer.scala
Mon Mar 21 18:07:43 2011
@@ -29,6 +29,7 @@ import org.fusesource.hawtdispatch._
 import java.io.File
 import java.lang.String
 import org.apache.activemq.apollo.broker.web.{WebServer, WebServerFactory}
+import java.net.URI
 
 /**
  * <p>
@@ -149,9 +150,11 @@ class JettyWebServer(val broker:Broker) 
       val config = broker.config
       val web_admin = config.web_admin
 
-      val prefix = web_admin.prefix.getOrElse("/")
-      val port = web_admin.port.getOrElse(61680)
-      val host = web_admin.host.getOrElse("127.0.0.1")
+      val bind = web_admin.bind.getOrElse("http://127.0.0.1:61680")
+      val bind_uri = new URI(bind)
+      val prefix = "/"+bind_uri.getPath.stripPrefix("/")
+      val host = bind_uri.getHost
+      val port = bind_uri.getPort
 
       // Start up the admin interface...
       debug("Starting administration interface");
@@ -210,7 +213,7 @@ class JettyWebServer(val broker:Broker) 
       server.start
 
       val localPort = connector.getLocalPort
-      def url = "http://"+host+":" + localPort + prefix
+      def url = new URI("http", null, host, localPort, prefix, null, null).toString
       broker.console_log.info("Administration interface available at: "+url)
       on_completed.run
     }

Modified: activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo-ssl.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo-ssl.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo-ssl.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo-ssl.xml
Mon Mar 21 18:07:43 2011
@@ -55,10 +55,10 @@
 
   </virtual_host>
 
-  <web_admin host="127.0.0.1" port="61680"/>
+  <web_admin bind="http://127.0.0.1:61680"/>
 
-  <connector id="tcp" bind="tcp://0.0.0.0:61613" connection_limit="2000"/>
-  <connector id="tls" bind="tls://0.0.0.0:61614" connection_limit="2000"/>
+  <connector id="tcp" bind="tcp://[::]:61613" connection_limit="2000"/>
+  <connector id="tls" bind="tls://[::]:61614" connection_limit="2000"/>
 
   <key_storage file="${apollo.base}/etc/keystore" password="password" key_password="password"/>
 

Modified: activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-cli/src/main/resources/org/apache/activemq/apollo/cli/commands/etc/apollo.xml
Mon Mar 21 18:07:43 2011
@@ -55,7 +55,8 @@
 
   </virtual_host>
 
-  <web_admin host="127.0.0.1" port="61680"/>
-  <connector id="tcp" bind="tcp://0.0.0.0:61613" connection_limit="2000"/>
+  <web_admin bind="http://127.0.0.1:61680"/>
+
+  <connector id="tcp" bind="tcp://[::]:61613" connection_limit="2000"/>
 
 </broker>

Modified: activemq/activemq-apollo/trunk/apollo-cli/src/main/scala/org/apache/activemq/apollo/cli/commands/Stop.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-cli/src/main/scala/org/apache/activemq/apollo/cli/commands/Stop.scala?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-cli/src/main/scala/org/apache/activemq/apollo/cli/commands/Stop.scala
(original)
+++ activemq/activemq-apollo/trunk/apollo-cli/src/main/scala/org/apache/activemq/apollo/cli/commands/Stop.scala
Mon Mar 21 18:07:43 2011
@@ -23,8 +23,8 @@ import org.apache.activemq.apollo.util.F
 import org.apache.activemq.apollo.util.OptionSupport._
 import org.apache.activemq.apollo.util.Logging
 import org.apache.commons.codec.binary.Base64
-import java.net.{HttpURLConnection, URL}
 import org.apache.felix.service.command.CommandSession
+import java.net.{URI, HttpURLConnection, URL}
 
 /**
  * The apollo stop command
@@ -62,9 +62,12 @@ class Stop extends Action with Logging {
           error("Web admin not enabled for that configuration, sorry can't shut the broker
down");
 
         case Some(web_admin)=>
-          val prefix = web_admin.prefix.getOrElse("/").stripSuffix("/")
-          val port = web_admin.port.getOrElse(8080)
-          val host = web_admin.host.getOrElse("127.0.0.1")
+        
+          val bind = web_admin.bind.getOrElse("http://localhost:61680")
+          val bind_uri = new URI(bind)
+          val prefix = bind_uri.getPath.stripSuffix("/")
+          val host = "localhost"
+          val port = bind_uri.getPort
 
           val auth = (user, password) match {
             case (null,null)=> None

Modified: activemq/activemq-apollo/trunk/apollo-cli/src/test/resources/example-broker/etc/apollo.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-cli/src/test/resources/example-broker/etc/apollo.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-cli/src/test/resources/example-broker/etc/apollo.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-cli/src/test/resources/example-broker/etc/apollo.xml
Mon Mar 21 18:07:43 2011
@@ -21,5 +21,5 @@
         <host_name>localhost</host_name>
         <bdb_store directory="${apollo.base}/data" flush_delay="100"/>
     </virtual_host>
-    <connector protocol="multi" bind="tcp://0.0.0.0:61613" id="default"/>
+    <connector protocol="multi" bind="tcp://[::]:61613" id="default"/>
 </broker>

Modified: activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/WebAdminDTO.java
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/WebAdminDTO.java?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/WebAdminDTO.java
(original)
+++ activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/WebAdminDTO.java
Mon Mar 21 18:07:43 2011
@@ -33,12 +33,6 @@ import java.util.Set;
 public class WebAdminDTO {
 
     @XmlAttribute
-    public String host;
-
-    @XmlAttribute
-    public Integer port;
-
-    @XmlAttribute
-    public String prefix;
+    public String bind;
 
 }

Modified: activemq/activemq-apollo/trunk/apollo-dto/src/test/java/org/apache/activemq/apollo/dto/XmlCodecTest.java
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-dto/src/test/java/org/apache/activemq/apollo/dto/XmlCodecTest.java?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-dto/src/test/java/org/apache/activemq/apollo/dto/XmlCodecTest.java
(original)
+++ activemq/activemq-apollo/trunk/apollo-dto/src/test/java/org/apache/activemq/apollo/dto/XmlCodecTest.java
Mon Mar 21 18:07:43 2011
@@ -81,7 +81,7 @@ public class XmlCodecTest {
 
         ConnectorDTO connector = new ConnectorDTO();
         connector.id = "port-61616";
-        connector.bind = "tcp://0.0.0.0:61616";
+        connector.bind = "tcp://[::]:61616";
         broker.connectors.add(connector);
 
         XmlCodec.marshalBrokerDTO(broker, System.out, true);

Modified: activemq/activemq-apollo/trunk/apollo-dto/src/test/resources/org/apache/activemq/apollo/dto/XmlCodecTest.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-dto/src/test/resources/org/apache/activemq/apollo/dto/XmlCodecTest.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-dto/src/test/resources/org/apache/activemq/apollo/dto/XmlCodecTest.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-dto/src/test/resources/org/apache/activemq/apollo/dto/XmlCodecTest.xml
Mon Mar 21 18:07:43 2011
@@ -33,7 +33,7 @@
     <durable_subscription name="durable_subscription1"/>
 
   </virtual_host>
-  <connector bind="tcp://0.0.0.0:61616" enabled="true" id="port-61616">
+  <connector bind="tcp://[::]:61616" enabled="true" id="port-61616">
     <stomp add_user_header="JMSXUserID">
       <add_user_header>GroupId</add_user_header>
       <add_user_header kind="UserPrincipal">UserId</add_user_header>

Modified: activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-bdb.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-bdb.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-bdb.xml (original)
+++ activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-bdb.xml Mon
Mar 21 18:07:43 2011
@@ -18,8 +18,6 @@
 <broker xmlns="http://activemq.apache.org/schema/activemq/apollo">
   <notes>Has a BDB store enabled.</notes>
 
-  <web_admin host="127.0.0.1" port="61680"/>
-
   <virtual_host id="default" purge_on_startup="true">
     <host_name>localhost</host_name>
 
@@ -28,6 +26,7 @@
     <bdb_store directory="${apollo.base}/data"/>
   </virtual_host>
 
-  <connector id="tcp" protocol="stomp" bind="tcp://0.0.0.0:0"/>
+  <web_admin bind="http://127.0.0.1:61680"/>
+  <connector id="tcp" protocol="stomp" bind="tcp://[::]:0"/>
 
 </broker>
\ No newline at end of file

Modified: activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-secure.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-secure.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-secure.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-secure.xml
Mon Mar 21 18:07:43 2011
@@ -57,7 +57,7 @@
     </queue>
   </virtual_host>
 
-  <connector id="tcp" protocol="stomp" bind="tcp://0.0.0.0:0">
+  <connector id="tcp" protocol="stomp" bind="tcp://[::]:0">
     <stomp add_user_header="JMSXUserID"/>
   </connector>
 

Modified: activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl-secure.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl-secure.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl-secure.xml
(original)
+++ activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl-secure.xml
Mon Mar 21 18:07:43 2011
@@ -30,6 +30,6 @@
   </virtual_host>
 
   <key_storage file="${basedir}/src/test/resources/apollo.ks" password="password" key_password="password"/>
-  <connector id="ssl" protocol="stomp" bind="ssl://0.0.0.0:0" />
+  <connector id="ssl" protocol="stomp" bind="ssl://[::]:0" />
 
 </broker>
\ No newline at end of file

Modified: activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl.xml (original)
+++ activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp-ssl.xml Mon
Mar 21 18:07:43 2011
@@ -23,6 +23,6 @@
     </virtual_host>
 
     <key_storage file="${basedir}/src/test/resources/apollo.ks" password="password" key_password="password"/>
-    <connector id="ssl" protocol="stomp" bind="ssl://0.0.0.0:0" />
+    <connector id="ssl" protocol="stomp" bind="ssl://[::]:0" />
 
 </broker>
\ No newline at end of file

Modified: activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp.xml
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp.xml?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp.xml (original)
+++ activemq/activemq-apollo/trunk/apollo-stomp/src/test/resources/apollo-stomp.xml Mon Mar
21 18:07:43 2011
@@ -25,6 +25,6 @@
 
   </virtual_host>
 
-  <connector id="tcp" protocol="stomp" bind="tcp://0.0.0.0:0"/>
+  <connector id="tcp" protocol="stomp" bind="tcp://[::]:0"/>
 
 </broker>
\ No newline at end of file

Modified: activemq/activemq-apollo/trunk/apollo-tcp/src/main/java/org/apache/activemq/apollo/transport/tcp/TcpTransportServer.java
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-tcp/src/main/java/org/apache/activemq/apollo/transport/tcp/TcpTransportServer.java?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-tcp/src/main/java/org/apache/activemq/apollo/transport/tcp/TcpTransportServer.java
(original)
+++ activemq/activemq-apollo/trunk/apollo-tcp/src/main/java/org/apache/activemq/apollo/transport/tcp/TcpTransportServer.java
Mon Mar 21 18:07:43 2011
@@ -55,10 +55,7 @@ public class TcpTransportServer implemen
     public TcpTransportServer(URI location) throws UnknownHostException {
         bindScheme = location.getScheme();
         String host = location.getHost();
-        host = (host == null || host.length() == 0) ? "localhost" : host;
-        if (host.equals("localhost")) {
-            host = "0.0.0.0";
-        }
+        host = (host == null || host.length() == 0) ? "::" : host;
         bindAddress = new InetSocketAddress(InetAddress.getByName(host), location.getPort());
     }
 
@@ -128,11 +125,19 @@ public class TcpTransportServer implemen
     }
 
     public String getBoundAddress() {
-        return bindScheme+"://"+bindAddress.getAddress()+":"+channel.socket().getLocalPort();
+        try {
+            return new URI(bindScheme, null, bindAddress.getAddress().getHostAddress(), channel.socket().getLocalPort(),
null, null, null).toString();
+        } catch (URISyntaxException e) {
+            throw new RuntimeException(e);
+        }
     }
 
     public String getConnectAddress() {
-        return bindScheme+"://"+resolveHostName()+":"+channel.socket().getLocalPort();
+        try {
+            return new URI(bindScheme, null, resolveHostName(), channel.socket().getLocalPort(),
null, null, null).toString();
+        } catch (URISyntaxException e) {
+            throw new RuntimeException(e);
+        }
     }
 
 

Modified: activemq/activemq-apollo/trunk/apollo-website/src/documentation/user-manual.md
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-website/src/documentation/user-manual.md?rev=1083885&r1=1083884&r2=1083885&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-website/src/documentation/user-manual.md (original)
+++ activemq/activemq-apollo/trunk/apollo-website/src/documentation/user-manual.md Mon Mar
21 18:07:43 2011
@@ -82,7 +82,7 @@ single connector.
     <host_name>localhost</host_name>
   </virtual_host>
 
-  <connector id="tcp" bind="tcp://0.0.0.0:61613"/>
+  <connector id="tcp" bind="tcp://[::]:61613"/>
   
 </broker>
 {pygmentize}
@@ -118,7 +118,7 @@ header of messages to the id of user tha
 use the following configuration:
 
 {pygmentize:: xml}
-<connector id="tcp" bind="tcp://0.0.0.0:61613">
+<connector id="tcp" bind="tcp://[::]:61613">
   <stomp add_user_header="user_id"/>
 </connector>
 {pygmentize}
@@ -391,7 +391,7 @@ Example:
      file="${apollo.base}/etc/keystore" 
      password="password" 
      key_password="password"/>
-  <connector id="tls" bind="tls://0.0.0.0:61614"/>
+  <connector id="tls" bind="tls://[::]:61614"/>
   ...
 {pygmentize}
 
@@ -438,7 +438,7 @@ to `false`.
     <host_name>cheeze.com</host_name>
   </virtual_host>
 
-  <connector id="tcp" bind="tcp://0.0.0.0:61613"/>
+  <connector id="tcp" bind="tcp://[::]:61613"/>
 </broker>
 {pygmentize}
 
@@ -694,17 +694,14 @@ For example:
 {pygmentize:: xml}
 <broker xmlns="http://activemq.apache.org/schema/activemq/apollo">
   ...
-  <web_admin host="127.0.0.1" port="8001"/>
+  <web_admin bind="http://127.0.0.1:61680"/>
   ...
 </broker>
 {pygmentize}
 
 A `web_admin` element may be configured with the following attributes:
 
-* `host` : The amount of memory buffer space allocated for each queue.
-* `port` : The amount of memory buffer space allocated to each
-* `prefix` : The prefix path to the web administration application
-* `enabled` : If set to false then web administration is disabled. 
+* `bind` : The address and port to bind the web interface on in URL syntax.
 
 ## Managing Brokers
 



Mime
View raw message