[jboss-cvs] JBoss Messaging SVN: r5956 - in trunk: src/main/org/jboss/messaging/core/config/cluster and 11 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Mar 2 08:13:24 EST 2009


Author: jmesnil
Date: 2009-03-02 08:13:24 -0500 (Mon, 02 Mar 2009)
New Revision: 5956

Modified:
   trunk/src/config/jbm-cluster-configuration.xml
   trunk/src/config/jbm-configuration.xml
   trunk/src/main/org/jboss/messaging/core/config/cluster/BroadcastGroupConfiguration.java
   trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java
   trunk/src/main/org/jboss/messaging/core/management/BroadcastGroupControlMBean.java
   trunk/src/main/org/jboss/messaging/core/management/impl/BroadcastGroupControl.java
   trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BroadcastGroupImpl.java
   trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java
   trunk/src/schemas/jbm-configuration.xsd
   trunk/tests/config/ConfigurationTest-full-config.xml
   trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/ClusterTestBase.java
   trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/AutomaticFailoverWithDiscoveryTest.java
   trunk/tests/src/org/jboss/messaging/tests/integration/discovery/DiscoveryTest.java
   trunk/tests/src/org/jboss/messaging/tests/integration/management/BroadcastGroupControlTest.java
   trunk/tests/src/org/jboss/messaging/tests/util/RandomUtil.java
Log:
JBMESSAGING-1520: Specify the local address & port and for the broadcast group

* removed the localBindAddress: a DatagramSocket must be bound to the wildcard address to receive broadcast packets
* the localBindPort can be specified. if it is -1, the DatagramSocket is created without specifiying a port
* updated tests, configurations and XML schemas

Modified: trunk/src/config/jbm-cluster-configuration.xml
===================================================================
--- trunk/src/config/jbm-cluster-configuration.xml	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/config/jbm-cluster-configuration.xml	2009-03-02 13:13:24 UTC (rev 5956)
@@ -117,7 +117,6 @@
             <!-- Clustering configuration -->
       
       <broadcast-group name="bg-group1">
-        <local-bind-address>localhost</local-bind-address>
         <local-bind-port>1234</local-bind-port>
         <group-address>231.7.7.7</group-address>
         <group-port>9876</group-port>

Modified: trunk/src/config/jbm-configuration.xml
===================================================================
--- trunk/src/config/jbm-configuration.xml	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/config/jbm-configuration.xml	2009-03-02 13:13:24 UTC (rev 5956)
@@ -125,7 +125,6 @@
       <!-- Clustering configuration -->
       
       <broadcast-group name="bg-group1">
-        <local-bind-address>localhost</local-bind-address>
         <local-bind-port>1234</local-bind-port>
         <group-address>231.7.7.7</group-address>
         <group-port>9876</group-port>

Modified: trunk/src/main/org/jboss/messaging/core/config/cluster/BroadcastGroupConfiguration.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/config/cluster/BroadcastGroupConfiguration.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/config/cluster/BroadcastGroupConfiguration.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -46,8 +46,6 @@
   
    private final String name;
    
-   private final String localBindAddress;
-   
    private final int localBindPort;
    
    private final String groupAddress;
@@ -59,7 +57,6 @@
    private final List<Pair<String, String>> connectorInfos;
 
    public BroadcastGroupConfiguration(final String name,
-                                      final String localBindAddress,
                                       final int localBindPort,
                                       final String groupAddress,
                                       final int groupPort,
@@ -68,7 +65,6 @@
    {
       super();
       this.name = name;
-      this.localBindAddress = localBindAddress;
       this.localBindPort = localBindPort;
       this.groupAddress = groupAddress;
       this.groupPort = groupPort;
@@ -81,11 +77,6 @@
       return name;
    }
 
-   public String getLocalBindAddress()
-   {
-      return localBindAddress;
-   }
-
    public int getLocalBindPort()
    {
       return localBindPort;

Modified: trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -420,8 +420,6 @@
    {
       String name = bgNode.getAttribute("name");
 
-      String localBindAddress = null;
-
       int localBindPort = -1;
 
       String groupAddress = null;
@@ -438,12 +436,8 @@
       {
          Node child = children.item(j);
 
-         if (child.getNodeName().equals("local-bind-address"))
+         if (child.getNodeName().equals("local-bind-port"))
          {
-            localBindAddress = child.getTextContent().trim();
-         }
-         else if (child.getNodeName().equals("local-bind-port"))
-         {
             localBindPort = org.jboss.messaging.utils.XMLUtil.parseInt(child);
          }
          else if (child.getNodeName().equals("group-address"))
@@ -478,7 +472,6 @@
       }
 
       BroadcastGroupConfiguration config = new BroadcastGroupConfiguration(name,
-                                                                           localBindAddress,
                                                                            localBindPort,
                                                                            groupAddress,
                                                                            groupPort,

Modified: trunk/src/main/org/jboss/messaging/core/management/BroadcastGroupControlMBean.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/BroadcastGroupControlMBean.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/management/BroadcastGroupControlMBean.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -34,8 +34,6 @@
 {
    String getName();
 
-   String getLocalBindAddress();
-
    int getLocalBindPort();
 
    String getGroupAddress();

Modified: trunk/src/main/org/jboss/messaging/core/management/impl/BroadcastGroupControl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/impl/BroadcastGroupControl.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/management/impl/BroadcastGroupControl.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -84,11 +84,6 @@
       return configuration.getGroupPort();
    }
 
-   public String getLocalBindAddress()
-   {
-      return configuration.getLocalBindAddress();
-   }
-
    public int getLocalBindPort()
    {
       return configuration.getLocalBindPort();

Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BroadcastGroupImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BroadcastGroupImpl.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BroadcastGroupImpl.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -52,8 +52,6 @@
 
    private final String name;
 
-   private final InetAddress localBindAddress;
-
    private final int localPort;
 
    private final InetAddress groupAddress;
@@ -70,7 +68,6 @@
 
    public BroadcastGroupImpl(final String nodeID,
                              final String name,
-                             final InetAddress localBindAddress,
                              final int localPort,
                              final InetAddress groupAddress,
                              final int groupPort) throws Exception
@@ -79,17 +76,11 @@
 
       this.name = name;
 
-      this.localBindAddress = localBindAddress;
-
       this.localPort = localPort;
 
       this.groupAddress = groupAddress;
 
       this.groupPort = groupPort;
-
-      // FIXME - doesn't seem to work when specifying port and address
-
-      // this.socket = new DatagramSocket(localPort, localBindAddress);
    }
 
    public synchronized void start() throws Exception
@@ -99,8 +90,15 @@
          return;
       }
 
-      socket = new DatagramSocket();
-
+      // we configure only the port, the address must be bound to the wildcard address to receive broadcast packets
+      if (localPort != -1)
+      {
+         socket = new DatagramSocket(localPort);
+      } else
+      {
+         socket = new DatagramSocket();         
+      }
+      
       started = true;
    }
 

Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -218,13 +218,10 @@
          return;
       }
 
-      InetAddress localBindAddress = InetAddress.getByName(config.getLocalBindAddress());
-
       InetAddress groupAddress = InetAddress.getByName(config.getGroupAddress());
 
       BroadcastGroupImpl group = new BroadcastGroupImpl(nodeUUID.toString(),
                                                         config.getName(),
-                                                        localBindAddress,
                                                         config.getLocalBindPort(),
                                                         groupAddress,
                                                         config.getGroupPort());

Modified: trunk/src/schemas/jbm-configuration.xsd
===================================================================
--- trunk/src/schemas/jbm-configuration.xsd	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/src/schemas/jbm-configuration.xsd	2009-03-02 13:13:24 UTC (rev 5956)
@@ -197,9 +197,6 @@
 	<xsd:element name="broadcast-group">
 		<xsd:complexType>
 			<xsd:sequence>
-				<xsd:element ref="local-bind-address" maxOccurs="1"
-					minOccurs="0">
-				</xsd:element>
 				<xsd:element ref="local-bind-port" maxOccurs="1"
 					minOccurs="0">
 				</xsd:element>

Modified: trunk/tests/config/ConfigurationTest-full-config.xml
===================================================================
--- trunk/tests/config/ConfigurationTest-full-config.xml	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/config/ConfigurationTest-full-config.xml	2009-03-02 13:13:24 UTC (rev 5956)
@@ -69,7 +69,6 @@
 	      <param key="b_mykey4" value="b_foovalue4" type="String"/>            
 	   </acceptor>
 	  <broadcast-group name="bg1">
-	     <local-bind-address>127.0.0.1</local-bind-address>
 	     <local-bind-port>10999</local-bind-port>
 	     <group-address>192.168.0.120</group-address>
 	     <group-port>11999</group-port>
@@ -77,7 +76,6 @@
          <connector-ref connector-name="connector"/>
 	  </broadcast-group>
       <broadcast-group name="bg2">
-         <local-bind-address>127.0.0.1</local-bind-address>
          <local-bind-port>10999</local-bind-port>
          <group-address>192.168.0.120</group-address>
          <group-port>11999</group-port>

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/ClusterTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/ClusterTestBase.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/ClusterTestBase.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -774,7 +774,6 @@
       }
 
       BroadcastGroupConfiguration bcConfig = new BroadcastGroupConfiguration("bg1",
-                                                                             null,
                                                                              -1,
                                                                              groupAddress,
                                                                              port,

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/AutomaticFailoverWithDiscoveryTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/AutomaticFailoverWithDiscoveryTest.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/AutomaticFailoverWithDiscoveryTest.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -203,12 +203,9 @@
 
       final String bcGroupName = "bc1";
 
-      final String localBindAddress = "localhost";
-
       final int localBindPort = 5432;
       
       BroadcastGroupConfiguration bcConfig1 = new BroadcastGroupConfiguration(bcGroupName,
-                                                                              localBindAddress,
                                                                               localBindPort,
                                                                               groupAddress,
                                                                               groupPort,

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/discovery/DiscoveryTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/discovery/DiscoveryTest.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/discovery/DiscoveryTest.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -69,7 +69,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -114,7 +114,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -181,7 +181,7 @@
       
       String nodeID = randomString();
 
-      BroadcastGroup bg = new BroadcastGroupImpl(nodeID, randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(nodeID, randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -263,7 +263,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -299,7 +299,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -343,13 +343,13 @@
 
       final int timeout = 500;
 
-      BroadcastGroup bg1 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress1, groupPort1);
+      BroadcastGroup bg1 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress1, groupPort1);
       bg1.start();
 
-      BroadcastGroup bg2 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress2, groupPort2);
+      BroadcastGroup bg2 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress2, groupPort2);
       bg2.start();
 
-      BroadcastGroup bg3 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress3, groupPort3);
+      BroadcastGroup bg3 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress3, groupPort3);
       bg3.start();
 
       TransportConfiguration live1 = generateTC();
@@ -428,7 +428,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -471,7 +471,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 
@@ -583,13 +583,13 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg1 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg1 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
       bg1.start();
 
-      BroadcastGroup bg2 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg2 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
       bg2.start();
 
-      BroadcastGroup bg3 = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg3 = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
       bg3.start();
 
       TransportConfiguration live1 = generateTC();
@@ -823,7 +823,7 @@
       final int groupPort = 6745;
       final int timeout = 500;
 
-      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), null, -1, groupAddress, groupPort);
+      BroadcastGroup bg = new BroadcastGroupImpl(randomString(), randomString(), -1, groupAddress, groupPort);
 
       bg.start();
 

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/management/BroadcastGroupControlTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/management/BroadcastGroupControlTest.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/management/BroadcastGroupControlTest.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -23,6 +23,7 @@
 package org.jboss.messaging.tests.integration.management;
 
 import static org.jboss.messaging.tests.integration.management.ManagementControlHelper.createBroadcastGroupControl;
+import static org.jboss.messaging.tests.util.RandomUtil.randomPort;
 import static org.jboss.messaging.tests.util.RandomUtil.randomPositiveInt;
 import static org.jboss.messaging.tests.util.RandomUtil.randomPositiveLong;
 import static org.jboss.messaging.tests.util.RandomUtil.randomString;
@@ -41,6 +42,7 @@
 import org.jboss.messaging.core.server.Messaging;
 import org.jboss.messaging.core.server.MessagingService;
 import org.jboss.messaging.integration.transports.netty.NettyConnectorFactory;
+import org.jboss.messaging.tests.util.RandomUtil;
 import org.jboss.messaging.tests.util.UnitTestCase;
 import org.jboss.messaging.utils.Pair;
 
@@ -67,8 +69,7 @@
    public static BroadcastGroupConfiguration randomBroadcastGroupConfiguration(List<Pair<String, String>> connectorInfos)
    {
       return new BroadcastGroupConfiguration(randomString(),
-                                             "localhost",
-                                             randomPositiveInt(),
+                                             randomPort(),
                                              "231.7.7.7",
                                              randomPositiveInt(),
                                              randomPositiveLong(),
@@ -106,7 +107,6 @@
       assertEquals(broadcastGroupConfig.getName(), broadcastGroupControl.getName());
       assertEquals(broadcastGroupConfig.getGroupAddress(), broadcastGroupControl.getGroupAddress());
       assertEquals(broadcastGroupConfig.getGroupPort(), broadcastGroupControl.getGroupPort());
-      assertEquals(broadcastGroupConfig.getLocalBindAddress(), broadcastGroupControl.getLocalBindAddress());
       assertEquals(broadcastGroupConfig.getLocalBindPort(), broadcastGroupControl.getLocalBindPort());
    }
 

Modified: trunk/tests/src/org/jboss/messaging/tests/util/RandomUtil.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/util/RandomUtil.java	2009-03-02 12:00:26 UTC (rev 5955)
+++ trunk/tests/src/org/jboss/messaging/tests/util/RandomUtil.java	2009-03-02 13:13:24 UTC (rev 5956)
@@ -82,6 +82,11 @@
       return Math.abs(randomInt());
    }
    
+   public static int randomPort()
+   {
+      return random.nextInt(65536);
+   }
+
    public static short randomShort()
    {
       return (short) random.nextInt(Short.MAX_VALUE);




More information about the jboss-cvs-commits mailing list