[jboss-cvs] JBoss Messaging SVN: r5750 - in trunk: src/main/org/jboss/messaging/core/postoffice/impl and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Jan 28 05:53:23 EST 2009


Author: ataylor
Date: 2009-01-28 05:53:22 -0500 (Wed, 28 Jan 2009)
New Revision: 5750

Modified:
   trunk/src/main/org/jboss/messaging/core/postoffice/AddressManager.java
   trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
   trunk/src/main/org/jboss/messaging/core/postoffice/impl/SimpleAddressManager.java
   trunk/src/main/org/jboss/messaging/core/postoffice/impl/WildcardAddressManager.java
   trunk/tests/src/org/jboss/messaging/tests/unit/core/postoffice/impl/SimpleAddressManagerTest.java
Log:
more address manager tweaks

Modified: trunk/src/main/org/jboss/messaging/core/postoffice/AddressManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/AddressManager.java	2009-01-28 08:43:12 UTC (rev 5749)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/AddressManager.java	2009-01-28 10:53:22 UTC (rev 5750)
@@ -35,16 +35,14 @@
  */
 public interface AddressManager
 {
-   boolean addMapping(Binding binding);
+   boolean addBinding(Binding binding);
 
+   Binding removeBinding(SimpleString queueName);
+
    Bindings getBindings(SimpleString address);
 
    void clear();
 
-   Binding removeBinding(SimpleString queueName);
-
-   boolean removeMapping(SimpleString address, SimpleString queueName);
-
    boolean addDestination(SimpleString address);
 
    boolean removeDestination(SimpleString address);

Modified: trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java	2009-01-28 08:43:12 UTC (rev 5749)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java	2009-01-28 10:53:22 UTC (rev 5750)
@@ -637,7 +637,7 @@
 
    private void addBindingInMemory(final Binding binding) throws Exception
    {
-      boolean exists = addressManager.addMapping(binding);
+      boolean exists = addressManager.addBinding(binding);
 
       if (!exists)
       {
@@ -661,7 +661,7 @@
    {
       Binding binding = addressManager.removeBinding(bindingName);
 
-      if (addressManager.removeMapping(binding.getAddress(), bindingName))
+      if (binding != null)
       {
          managementService.unregisterAddress(binding.getAddress());
       }

Modified: trunk/src/main/org/jboss/messaging/core/postoffice/impl/SimpleAddressManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/impl/SimpleAddressManager.java	2009-01-28 08:43:12 UTC (rev 5749)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/impl/SimpleAddressManager.java	2009-01-28 10:53:22 UTC (rev 5750)
@@ -48,7 +48,7 @@
 
    private final ConcurrentMap<SimpleString, Binding> nameMap = new ConcurrentHashMap<SimpleString, Binding>();
 
-   public boolean addMapping(final Binding binding)
+   public boolean addBinding(final Binding binding)
    {
       if (nameMap.putIfAbsent(binding.getUniqueName(), binding) != null)
       {
@@ -57,6 +57,19 @@
       return addMappingInternal(binding.getAddress(), binding);
    }
 
+   public Binding removeBinding(final SimpleString bindableName)
+   {
+      Binding binding = nameMap.remove(bindableName);
+
+      if (binding == null)
+      {
+         throw new IllegalStateException("Queue is not bound " + bindableName);
+      }
+
+      removeBindingInternal(binding.getAddress(), bindableName);
+      return binding;
+   }
+
    public Bindings getBindings(final SimpleString address)
    {
       return mappings.get(address);
@@ -99,19 +112,8 @@
       mappings.clear();
    }
 
-   public Binding removeBinding(final SimpleString bindableName)
+   protected void removeBindingInternal(final SimpleString address, final SimpleString bindableName)
    {
-      Binding binding = nameMap.remove(bindableName);
-
-      if (binding == null)
-      {
-         throw new IllegalStateException("Queue is not bound " + bindableName);
-      }
-      return binding;
-   }
-
-   public boolean removeMapping(final SimpleString address, final SimpleString bindableName)
-   {
       Bindings bindings = mappings.get(address);
 
       if (bindings != null)
@@ -122,11 +124,7 @@
          {
             mappings.remove(address);
          }
-
-         return true;
       }
-
-      return false;
    }
 
    protected Binding removeMapping(final SimpleString bindableName, final Bindings bindings)

Modified: trunk/src/main/org/jboss/messaging/core/postoffice/impl/WildcardAddressManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/impl/WildcardAddressManager.java	2009-01-28 08:43:12 UTC (rev 5749)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/impl/WildcardAddressManager.java	2009-01-28 10:53:22 UTC (rev 5750)
@@ -92,9 +92,9 @@
     * @param binding the binding to add
     * @return true if the address was a new mapping
     */
-   public boolean addMapping(final Binding binding)
+   public boolean addBinding(final Binding binding)
    {
-      boolean exists = super.addMapping(binding);
+      boolean exists = super.addBinding(binding);
       if (!exists)
       {
          Address add = addAndUpdateAddressMap(binding.getAddress());
@@ -125,16 +125,15 @@
     * If the address is a wild card then the binding will be removed from the actual mappings for any linked address.
     * otherwise it will be removed as normal.
     *
-    * @param address      the address to remove the binding from
     * @param bindableName the name of the queue for the binding to remove
     * @return true if this was the last mapping for a specific address
     */
-   public boolean removeMapping(final SimpleString address, final SimpleString bindableName)
+   public Binding removeBinding(final SimpleString bindableName)
    {
-      boolean removed = super.removeMapping(address, bindableName);
-      if (removed)
+      Binding binding = super.removeBinding(bindableName);
+      if (binding != null)
       {
-         Address add = getAddress(address);
+         Address add = getAddress(binding.getAddress());
          if (!add.containsWildCard())
          {
             for (Address destination : add.getLinkedAddresses())
@@ -144,7 +143,7 @@
                {
                   for (Binding b : bindings.getBindings())
                   {
-                     super.removeMapping(address, b.getUniqueName());
+                     super.removeBindingInternal(binding.getAddress(), b.getUniqueName());
                   }
                }
             }
@@ -153,12 +152,12 @@
          {
             for (Address destination : add.getLinkedAddresses())
             {
-               super.removeMapping(destination.getAddress(), bindableName);
+               super.removeBindingInternal(destination.getAddress(), bindableName);
             }
          }
          removeAndUpdateAddressMap(add);
       }
-      return removed;
+      return binding;
    }
 
    public boolean containsDestination(final SimpleString address)

Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/postoffice/impl/SimpleAddressManagerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/postoffice/impl/SimpleAddressManagerTest.java	2009-01-28 08:43:12 UTC (rev 5749)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/postoffice/impl/SimpleAddressManagerTest.java	2009-01-28 10:53:22 UTC (rev 5750)
@@ -229,7 +229,7 @@
 //      EasyMock.expect(q.getName()).andStubReturn(qName);
 //      QueueBindingImpl b1 = new QueueBindingImpl(address, q);
 //      EasyMock.replay(q);
-//      sam.addMapping(address, b1);
+//      sam.addBinding(address, b1);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 1);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -244,7 +244,7 @@
 //      EasyMock.expect(q.getName()).andStubReturn(qName);
 //      QueueBindingImpl b1 = new QueueBindingImpl(address, q);
 //      EasyMock.replay(q);
-//      sam.addMapping(address, b1);
+//      sam.addBinding(address, b1);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 1);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -277,11 +277,11 @@
 //      QueueBindingImpl b4 = new QueueBindingImpl(address, q4);
 //      QueueBindingImpl b5 = new QueueBindingImpl(address, q5);
 //      EasyMock.replay(q, q2, q3, q4, q5);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address, b2);
-//      sam.addMapping(address, b3);
-//      sam.addMapping(address, b4);
-//      sam.addMapping(address, b5);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address, b2);
+//      sam.addBinding(address, b3);
+//      sam.addBinding(address, b4);
+//      sam.addBinding(address, b5);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 5);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -316,11 +316,11 @@
 //      QueueBindingImpl b4 = new QueueBindingImpl(address, q4);
 //      QueueBindingImpl b5 = new QueueBindingImpl(address, q5);
 //      EasyMock.replay(q, q2, q3, q4, q5);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address, b2);
-//      sam.addMapping(address, b3);
-//      sam.addMapping(address, b4);
-//      sam.addMapping(address, b5);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address, b2);
+//      sam.addBinding(address, b3);
+//      sam.addBinding(address, b4);
+//      sam.addBinding(address, b5);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 5);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -366,11 +366,11 @@
 //      QueueBindingImpl b4 = new QueueBindingImpl(address4, q4);
 //      QueueBindingImpl b5 = new QueueBindingImpl(address5, q5);
 //      EasyMock.replay(q, q2, q3, q4, q5);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address2, b2);
-//      sam.addMapping(address3, b3);
-//      sam.addMapping(address4, b4);
-//      sam.addMapping(address5, b5);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address2, b2);
+//      sam.addBinding(address3, b3);
+//      sam.addBinding(address4, b4);
+//      sam.addBinding(address5, b5);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 1);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -417,11 +417,11 @@
 //      QueueBindingImpl b4 = new QueueBindingImpl(address4, q4);
 //      QueueBindingImpl b5 = new QueueBindingImpl(address5, q5);
 //      EasyMock.replay(q, q2, q3, q4, q5);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address2, b2);
-//      sam.addMapping(address3, b3);
-//      sam.addMapping(address4, b4);
-//      sam.addMapping(address5, b5);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address2, b2);
+//      sam.addBinding(address3, b3);
+//      sam.addBinding(address4, b4);
+//      sam.addBinding(address5, b5);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 1);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -504,16 +504,16 @@
 //      QueueBindingImpl b9 = new QueueBindingImpl(address9, q9);
 //      QueueBindingImpl b10 = new QueueBindingImpl(address10, q10);
 //      EasyMock.replay(q);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address2, b2);
-//      sam.addMapping(address, b3);
-//      sam.addMapping(address2, b4);
-//      sam.addMapping(address, b5);
-//      sam.addMapping(address2, b6);
-//      sam.addMapping(address, b7);
-//      sam.addMapping(address2, b8);
-//      sam.addMapping(address, b9);
-//      sam.addMapping(address2, b10);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address2, b2);
+//      sam.addBinding(address, b3);
+//      sam.addBinding(address2, b4);
+//      sam.addBinding(address, b5);
+//      sam.addBinding(address2, b6);
+//      sam.addBinding(address, b7);
+//      sam.addBinding(address2, b8);
+//      sam.addBinding(address, b9);
+//      sam.addBinding(address2, b10);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 5);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);
@@ -584,16 +584,16 @@
 //      QueueBindingImpl b9 = new QueueBindingImpl(address9, q9);
 //      QueueBindingImpl b10 = new QueueBindingImpl(address10, q10);
 //      EasyMock.replay(q, q2, q3, q4, q5);
-//      sam.addMapping(address, b1);
-//      sam.addMapping(address2, b2);
-//      sam.addMapping(address, b3);
-//      sam.addMapping(address2, b4);
-//      sam.addMapping(address, b5);
-//      sam.addMapping(address2, b6);
-//      sam.addMapping(address, b7);
-//      sam.addMapping(address2, b8);
-//      sam.addMapping(address, b9);
-//      sam.addMapping(address2, b10);
+//      sam.addBinding(address, b1);
+//      sam.addBinding(address2, b2);
+//      sam.addBinding(address, b3);
+//      sam.addBinding(address2, b4);
+//      sam.addBinding(address, b5);
+//      sam.addBinding(address2, b6);
+//      sam.addBinding(address, b7);
+//      sam.addBinding(address2, b8);
+//      sam.addBinding(address, b9);
+//      sam.addBinding(address2, b10);
 //      assertNotNull(sam.getBindings(address));
 //      assertEquals(sam.getBindings(address).getBindings().size(), 5);
 //      assertEquals(sam.getBindings(address).getBindings().get(0), b1);




More information about the jboss-cvs-commits mailing list