[jboss-cvs] JBoss Messaging SVN: r3826 - in trunk: src/main/org/jboss/messaging/core/management/impl and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Feb 28 04:54:58 EST 2008


Author: ataylor
Date: 2008-02-28 04:54:57 -0500 (Thu, 28 Feb 2008)
New Revision: 3826

Modified:
   trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java
   trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java
   trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java
   trunk/src/main/org/jboss/messaging/core/server/Queue.java
   trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
   trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
   trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java
   trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
   trunk/tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java
   trunk/tests/src/org/jboss/test/messaging/jms/server/JMSServerManagerTest.java
Log:
management interface update

Modified: trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -96,9 +96,14 @@
 
    List<ServerConnection> getActiveConnections();
 
-   void moveMessages(String toQueue, String fromQueue, FilterImpl filter) throws Exception;
+   void moveMessages(String toQueue, String fromQueue, String filter) throws Exception;
 
-   void expireMessages(String queue,Filter filter) throws Exception;
+   void expireMessages(String queue,String filter) throws Exception;
 
+   void changeMessagePriority(String queue, String filter, int priority) throws Exception;
+
+   void changeMessageHeader(String queue, String filter, String header, Object value) throws Exception;
+
    Set<String> listAvailableAddresses();
+
 }

Modified: trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -72,7 +72,7 @@
    private HashMap<String, ScheduledFuture> currentRunningCounters = new HashMap<String, ScheduledFuture>();
 
    private ScheduledExecutorService scheduler;
-   
+
    private int maxMessageCounters = 20;
 
    public void setMessagingServer(MessagingServer messagingServer)
@@ -91,6 +91,7 @@
 //   }
 
    //
+
    public boolean isStarted()
    {
       return messagingServer.isStarted();
@@ -98,22 +99,55 @@
 
    public void createQueue(String address, String name) throws Exception
    {
-      messagingServer.createQueue(address, name);
+      if (messagingServer.getPostOffice().getBinding(name) == null)
+      {
+         messagingServer.getPostOffice().addBinding(address, name, null, true, false);
+      }
+
+      if (!messagingServer.getPostOffice().containsAllowableAddress(address))
+      {
+         messagingServer.getPostOffice().addAllowableAddress(address);
+      }
    }
 
    public void destroyQueue(String name) throws Exception
    {
-      messagingServer.destroyQueue(name);
+      Binding binding = messagingServer.getPostOffice().getBinding(name);
+
+      boolean destroyed = false;
+
+      if (binding != null)
+      {
+         Queue queue = binding.getQueue();
+
+         messagingServer.getPersistenceManager().deleteAllReferences(queue);
+
+         queue.removeAllReferences();
+
+         messagingServer.getPostOffice().removeBinding(queue.getName());
+
+         destroyed = true;
+      }
    }
 
    public boolean addAddress(String address)
    {
-      return messagingServer.addAddress(address);
+      if (!messagingServer.getPostOffice().containsAllowableAddress(address))
+      {
+      	messagingServer.getPostOffice().addAllowableAddress(address);
+         return true;
+      }
+      return false;
    }
 
    public boolean removeAddress(String address)
    {
-      return messagingServer.removeAddress(address);
+      if (messagingServer.getPostOffice().containsAllowableAddress(address))
+      {
+      	messagingServer.getPostOffice().removeAllowableAddress(address);
+         return true;
+      }
+      return false;
    }
 
    public ClientConnectionFactory createClientConnectionFactory(boolean strictTck, int prefetchSize)
@@ -124,19 +158,39 @@
 
    public void removeAllMessagesForAddress(String address) throws Exception
    {
-      messagingServer.removeAllMessagesForAddress(address);
+      List<Binding> bindings = messagingServer.getPostOffice().getBindingsForAddress(address);
+
+      for (Binding binding : bindings)
+      {
+         Queue queue = binding.getQueue();
+
+         if (queue.isDurable())
+         {
+            messagingServer.getPersistenceManager().deleteAllReferences(queue);
+         }
+
+         queue.removeAllReferences();
+      }
    }
 
    public void removeAllMessagesForBinding(String name) throws Exception
    {
-      messagingServer.removeAllMessagesForBinding(name);
+      Binding binding = messagingServer.getPostOffice().getBinding(name);
+      if (binding != null)
+      {
+         Queue queue = binding.getQueue();
+
+         messagingServer.getPersistenceManager().deleteAllReferences(queue);
+
+         queue.removeAllReferences();
+      }
    }
 
    public List<Message> listMessages(String queueName, Filter filter) throws Exception
    {
       List<Message> msgs = new ArrayList<Message>();
       Queue queue = getQueue(queueName);
-      if(queue != null)
+      if (queue != null)
       {
          List<MessageReference> allRefs = queue.list(filter);
          for (MessageReference allRef : allRefs)
@@ -144,12 +198,22 @@
             msgs.add(allRef.getMessage());
          }
       }
-     return msgs;
-  }
+      return msgs;
+   }
 
-   public void removeMessageForBinding(String binding, Filter filter) throws Exception
+   public void removeMessageForBinding(String name, Filter filter) throws Exception
    {
-      messagingServer.removeMessageForBinding(binding, filter);
+      Binding binding = messagingServer.getPostOffice().getBinding(name);
+      if (binding != null)
+      {
+         Queue queue = binding.getQueue();
+         List<MessageReference> allRefs = queue.list(filter);
+         for (MessageReference messageReference : allRefs)
+         {
+            messagingServer.getPersistenceManager().deleteReference(messageReference);
+            queue.removeReference(messageReference);
+         }
+      }
    }
 
    public void removeMessageForAddress(String binding, Filter filter) throws Exception
@@ -201,7 +265,7 @@
          throw new MessagingException(MessagingException.QUEUE_DOES_NOT_EXIST);
       }
       Queue queue = binding.getQueue();
-      currentCounters.put(queueName, new MessageCounter(queue.getName(),queue, queue.isDurable(), queue.getQueueSettings().getMatch(queue.getName()).getMessageCounterHistoryDayLimit()));
+      currentCounters.put(queueName, new MessageCounter(queue.getName(), queue, queue.isDurable(), queue.getQueueSettings().getMatch(queue.getName()).getMessageCounterHistoryDayLimit()));
    }
 
    public void unregisterMessageCounter(final String queueName) throws Exception
@@ -211,7 +275,7 @@
          throw new MessagingException(MessagingException.ILLEGAL_STATE, "Counter is not registered");
       }
       currentCounters.remove(queueName);
-      if(currentRunningCounters.get(queueName) != null)
+      if (currentRunningCounters.get(queueName) != null)
       {
          currentRunningCounters.get(queueName).cancel(true);
          currentRunningCounters.remove(queueName);
@@ -229,7 +293,7 @@
             throw new MessagingException(MessagingException.QUEUE_DOES_NOT_EXIST);
          }
          Queue queue = binding.getQueue();
-         messageCounter = new MessageCounter(queue.getName(), queue,  queue.isDurable(), queue.getQueueSettings().getMatch(queue.getName()).getMessageCounterHistoryDayLimit());
+         messageCounter = new MessageCounter(queue.getName(), queue, queue.isDurable(), queue.getQueueSettings().getMatch(queue.getName()).getMessageCounterHistoryDayLimit());
       }
       currentCounters.put(queueName, messageCounter);
       messageCounter.resetCounter();
@@ -254,7 +318,7 @@
       {
          throw new IllegalArgumentException(queueName + "counter not registered");
       }
-      if(currentRunningCounters.get(queueName) != null)
+      if (currentRunningCounters.get(queueName) != null)
       {
          currentRunningCounters.get(queueName).cancel(true);
          currentRunningCounters.remove(queueName);
@@ -266,7 +330,7 @@
    public MessageCounter getMessageCounter(String queueName)
    {
       MessageCounter messageCounter = currentCounters.get(queueName);
-      if(messageCounter != null && currentRunningCounters.get(queueName) == null)
+      if (messageCounter != null && currentRunningCounters.get(queueName) == null)
       {
          messageCounter.sample();
       }
@@ -282,7 +346,7 @@
    public void resetMessageCounter(String queue)
    {
       MessageCounter messageCounter = currentCounters.get(queue);
-      if(messageCounter != null)
+      if (messageCounter != null)
       {
          messageCounter.resetCounter();
       }
@@ -300,7 +364,7 @@
    public void resetMessageCounterHistory(String queue)
    {
       MessageCounter messageCounter = currentCounters.get(queue);
-      if(messageCounter != null)
+      if (messageCounter != null)
       {
          messageCounter.resetHistory();
       }
@@ -340,16 +404,17 @@
       return getQueue(queue).getConsumerCount();
    }
 
-   public  List<ServerConnection> getActiveConnections()
+   public List<ServerConnection> getActiveConnections()
    {
       return messagingServer.getConnectionManager().getActiveConnections();
    }
 
-   public void moveMessages(String fromQueue, String toQueue, FilterImpl filter) throws Exception
+   public void moveMessages(String fromQueue, String toQueue, String filter) throws Exception
    {
+      Filter actFilter = new FilterImpl(filter);
       Queue from = getQueue(fromQueue);
       Queue to = getQueue(toQueue);
-      List<MessageReference> messageReferences = from.removeReferences(filter);
+      List<MessageReference> messageReferences = from.removeReferences(actFilter);
       for (MessageReference messageReference : messageReferences)
       {
          to.addLast(messageReference);
@@ -357,15 +422,45 @@
 
    }
 
-   public void expireMessages(String queue, Filter filter) throws Exception
+   public void expireMessages(String queue, String filter) throws Exception
    {
-      List<MessageReference> allRefs = getQueue(queue).removeReferences(filter);
+      Filter actFilter = new FilterImpl(filter);
+      List<MessageReference> allRefs = getQueue(queue).removeReferences(actFilter);
       for (MessageReference messageReference : allRefs)
       {
          messageReference.expire(messagingServer.getPersistenceManager());
       }
    }
 
+   public void changeMessagePriority(String queue, String filter, int priority) throws Exception
+   {
+      Filter actFilter = new FilterImpl(filter);
+      List<MessageReference> allRefs = getQueue(queue).list(actFilter);
+      for (MessageReference messageReference : allRefs)
+      {
+         List<MessageReference> allRefsForMessage = messageReference.getMessage().getReferences();
+         for (MessageReference reference : allRefsForMessage)
+         {
+            reference.getQueue().changePriority(reference, priority);
+         }
+         messageReference.getMessage().setPriority((byte) priority);
+      }
+
+   }
+
+   public void changeMessageHeader(String queue, String filter, String header, Object value) throws Exception
+   {
+       Filter actFilter = new FilterImpl(filter);
+      List<MessageReference> allRefs = getQueue(queue).list(actFilter);
+      for (MessageReference reference : allRefs)
+      {
+         if(reference.getMessage().removeHeader(header) != null)
+         {
+            reference.getMessage().putHeader(header, value);
+         }
+      }
+   }
+
    public Set<String> listAvailableAddresses()
    {
       return messagingServer.getPostOffice().listAvailableAddresses();
@@ -851,6 +946,7 @@
 //   // Private ---------------------------------------------------------------------------
 
    //
+
    private Queue getQueue(String queueName) throws Exception
    {
       Binding binding = messagingServer.getPostOffice().getBinding(queueName);
@@ -1078,7 +1174,6 @@
 
    //
 
-
 //
 //   private int getMessageCount(String topicName, ListType type) throws Exception
 //   {
@@ -1185,7 +1280,7 @@
 
    public void stop() throws Exception
    {
-      if(scheduler != null)
+      if (scheduler != null)
       {
          scheduler.shutdown();
       }

Modified: trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -80,31 +80,7 @@
    HierarchicalRepository<QueueSettings> getQueueSettingsRepository();
 
    void setPostOffice(PostOffice postOffice);
-
-   void createQueue(String address, String name) throws Exception;
-
-   public boolean destroyQueue(String name) throws Exception;
-
-   public boolean destroyQueuesByAddress(String address) throws Exception;
    
-   boolean addAddress(String address);
-
-   boolean removeAddress(String address);
-   
-   void enableMessageCounters();
-
-   void disableMessageCounters();
-   
-   void resetAllMessageCounters();
-
-   void resetAllMessageCounterHistories();
-
-   void removeAllMessagesForAddress(String address) throws Exception;
-
-   void removeAllMessagesForBinding(String name) throws Exception;
-
-   void removeMessageForBinding(String name, Filter filter) throws Exception;
-   
    CreateConnectionResponse createConnection(String username, String password,
                                              String remotingClientSessionID, String clientVMID,
                                              int prefetchSize, String clientAddress) throws Exception;

Modified: trunk/src/main/org/jboss/messaging/core/server/Queue.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/Queue.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/server/Queue.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -66,6 +66,8 @@
 
    void removeReference(MessageReference messageReference);
 
+   void changePriority(final MessageReference messageReference, int priority);
+
    List<MessageReference> removeReferences(Filter filter);
 
    long getPersistenceID();

Modified: trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -288,20 +288,8 @@
       return deploymentManager;
    }
 
-   public void enableMessageCounters()
-   {
-      messageCounterManager.start();
-   }
 
-   public void disableMessageCounters()
-   {
-      messageCounterManager.stop();
 
-      messageCounterManager.resetAllCounters();
-
-      messageCounterManager.resetAllCounterHistories();
-   }
-
    public void createQueue(String address, String name) throws Exception
    {
       if (postOffice.getBinding(name) == null)
@@ -315,128 +303,6 @@
       }
    }
 
-   public boolean destroyQueuesByAddress(String address) throws Exception
-   {
-      List<Binding> bindings = postOffice.getBindingsForAddress(address);
-
-      boolean destroyed = false;
-
-      for (Binding binding : bindings)
-      {
-         Queue queue = binding.getQueue();
-
-         persistenceManager.deleteAllReferences(queue);
-
-         queue.removeAllReferences();
-
-         postOffice.removeBinding(queue.getName());
-
-         destroyed = true;
-      }
-
-      postOffice.removeAllowableAddress(address);
-
-      return destroyed;
-   }
-
-   public boolean destroyQueue(String name) throws Exception
-   {
-      Binding binding = postOffice.getBinding(name);
-
-      boolean destroyed = false;
-
-      if (binding != null)
-      {
-         Queue queue = binding.getQueue();
-
-         persistenceManager.deleteAllReferences(queue);
-
-         queue.removeAllReferences();
-
-         postOffice.removeBinding(queue.getName());
-
-         destroyed = true;
-      }
-
-      return destroyed;
-   }
-
-   public boolean addAddress(String address)
-   {
-      if (!postOffice.containsAllowableAddress(address))
-      {
-      	postOffice.addAllowableAddress(address);
-         return true;
-      }
-      return false;
-   }
-
-   public boolean removeAddress(String address)
-   {
-      if (postOffice.containsAllowableAddress(address))
-      {
-      	postOffice.removeAllowableAddress(address);
-         return true;
-      }
-      return false;
-   }
-
-   public void resetAllMessageCounters()
-   {
-      this.messageCounterManager.resetAllCounters();
-   }
-
-   public void resetAllMessageCounterHistories()
-   {
-      this.messageCounterManager.resetAllCounterHistories();
-   }
-
-
-   public void removeAllMessagesForAddress(String address) throws Exception
-   {
-      List<Binding> bindings = postOffice.getBindingsForAddress(address);
-
-      for (Binding binding : bindings)
-      {
-         Queue queue = binding.getQueue();
-
-         if (queue.isDurable())
-         {
-            persistenceManager.deleteAllReferences(queue);
-         }
-
-         queue.removeAllReferences();
-      }
-   }
-
-   public void removeAllMessagesForBinding(String name) throws Exception
-   {
-      Binding binding = postOffice.getBinding(name);
-      if (binding != null)
-      {
-         Queue queue = binding.getQueue();
-
-         persistenceManager.deleteAllReferences(queue);
-
-         queue.removeAllReferences();
-      }
-   }
-
-   public void removeMessageForBinding(String name, Filter filter) throws Exception
-   {
-      Binding binding = postOffice.getBinding(name);
-      if (binding != null)
-      {
-         Queue queue = binding.getQueue();
-         List<MessageReference> allRefs = queue.list(filter);
-         for (MessageReference messageReference : allRefs)
-         {
-            persistenceManager.deleteReference(messageReference);
-            queue.removeReference(messageReference);
-         }
-      }
-   }
-
    public ConnectionManager getConnectionManager()
    {
       return connectionManager;

Modified: trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -306,6 +306,13 @@
       //FIXME - what about scheduled??
    }
 
+   public synchronized void changePriority(final MessageReference messageReference, int priority)
+   {
+      messageReferences.remove(messageReference , messageReference.getMessage().getPriority());
+      messageReferences.addLast(messageReference, priority);
+      //FIXME - what about scheduled??
+   }
+
    //FIXME - review this
    public synchronized List<MessageReference> removeReferences(final Filter filter)
    {

Modified: trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -61,9 +61,9 @@
 
    void expireMessage(String queue, String messageId) throws Exception;
 
-   void changeMessagePriority(String messageId, int priority);
+   void changeMessagePriority(String queue, String messageId, int priority) throws Exception;
 
-   void changeMessageHeader(String  messageId, String header, Object value);
+   void changeMessageHeader(String queue,String messageId, String header, Object value) throws Exception;
 
    int getMessageCountForQueue(String queue) throws Exception;
 

Modified: trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -45,6 +45,8 @@
 import org.jboss.messaging.core.server.ServerSession;
 import org.jboss.messaging.jms.JBossQueue;
 import org.jboss.messaging.jms.JBossTopic;
+import org.jboss.messaging.jms.JBossTemporaryTopic;
+import org.jboss.messaging.jms.JBossTemporaryQueue;
 import org.jboss.messaging.jms.client.JBossConnectionFactory;
 import org.jboss.messaging.jms.client.JBossMessage;
 import org.jboss.messaging.jms.server.ConnectionInfo;
@@ -85,6 +87,7 @@
 
    /**
     * lifecycle method
+    * @throws Exception ex
     */
    public void start() throws Exception
    {
@@ -226,7 +229,16 @@
 
    public Set<String> listTemporaryDestinations()
    {
-      return null;  //todo
+      Set<String> availableAddresses = messagingServerManagement.listAvailableAddresses();
+      Set<String> tempDests = new HashSet<String>();
+      for (String address : availableAddresses)
+      {
+         if(address.startsWith(JBossTemporaryTopic.JMS_TOPIC_ADDRESS_PREFIX) || address.startsWith(JBossTemporaryQueue.JMS_QUEUE_ADDRESS_PREFIX))
+         {
+            tempDests.add(address.replace(JBossTopic.JMS_TOPIC_ADDRESS_PREFIX, ""));
+         }
+      }
+      return tempDests;
    }
 
    public boolean createConnectionFactory(String name, String clientID, int dupsOKBatchSize, boolean strictTck, int prefetchSize, String jndiBinding) throws Exception
@@ -334,22 +346,25 @@
    public void moveMessage(String fromQueue, String toQueue, String messageId) throws Exception
    {
       messagingServerManagement.moveMessages(new JBossQueue(fromQueue).getAddress(), new JBossQueue(toQueue).getAddress(),
-              new FilterImpl("JMSMessageID='" + messageId + "'"));
+              "JMSMessageID='" + messageId + "'");
    }
 
    public void expireMessage(String queue, String messageId) throws Exception
    {
-      messagingServerManagement.expireMessages(new JBossQueue(queue).getAddress(), new FilterImpl("JMSMessageID='" + messageId + "'"));
+      messagingServerManagement.expireMessages(new JBossQueue(queue).getAddress(),
+              "JMSMessageID='" + messageId + "'");
    }
 
-   public void changeMessagePriority(String messageId, int priority)
+   public void changeMessagePriority(String queue,String messageId, int priority) throws Exception
    {
-      //todo
+      messagingServerManagement.changeMessagePriority(new JBossQueue(queue).getAddress(), 
+              "JMSMessageID='" + messageId + "'", priority);
    }
 
-   public void changeMessageHeader(String messageId, String header, Object value)
+   public void changeMessageHeader(String queue, String messageId, String header, Object value) throws Exception
    {
-      //todo
+      messagingServerManagement.changeMessageHeader(new JBossQueue(queue).getAddress(),
+              "JMSMessageID='" + messageId + "'", header, value);
    }
 
    public int getMessageCountForQueue(String queue) throws Exception
@@ -380,7 +395,6 @@
    public void dropSubscription(String subscription) throws Exception
    {
       messagingServerManagement.destroyQueue(subscription);
-      
    }
 
    public int getConsumerCountForQueue(String queue) throws Exception
@@ -646,12 +660,12 @@
       return getSubscriptionsCount(topic, ListType.ALL);
    }
 
-   public int getSubscriptionsCount(JBossTopic topic, ListType listType) throws Exception
+   private int getSubscriptionsCount(JBossTopic topic, ListType listType) throws Exception
    {
       return listSubscriptions(topic, listType).size();
    }
 
-   public int getConsumerCount(JBossQueue queue) throws Exception
+   private int getConsumerCount(JBossQueue queue) throws Exception
    {
       return messagingServerManagement.getConsumerCountForQueue(queue.getAddress());
    }

Modified: trunk/tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -974,7 +974,8 @@
    public void testMessageListenerDupsOK() throws Exception
    {
       Connection conn = null;
-      
+       // FIXME the test hangs due to a race condition and never finish
+      fail("temporarily fails the test so that it does not hang the test suite");
       try
       {
 	      
@@ -1047,7 +1048,8 @@
    public void testMessageListenerClientAck() throws Exception
    {
       Connection conn = null;
-      
+       // FIXME the test hangs due to a race condition and never finish
+      fail("temporarily fails the test so that it does not hang the test suite");
       try
       {      
 	      conn = cf.createConnection();
@@ -1093,7 +1095,8 @@
    public void testMessageListenerTransactionalAck() throws Exception
    {
       Connection conn = null;
-      
+       // FIXME the test hangs due to a race condition and never finish
+      fail("temporarily fails the test so that it does not hang the test suite");
       try
       {	      
 	      conn = cf.createConnection();

Modified: trunk/tests/src/org/jboss/test/messaging/jms/server/JMSServerManagerTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/server/JMSServerManagerTest.java	2008-02-27 17:16:29 UTC (rev 3825)
+++ trunk/tests/src/org/jboss/test/messaging/jms/server/JMSServerManagerTest.java	2008-02-28 09:54:57 UTC (rev 3826)
@@ -287,7 +287,7 @@
       {
          List<ConnectionInfo> connectionInfos = jmsServerManager.getConnectionsForUser("guest");
          assertNotNull(connectionInfos);
-         assertEquals(connectionInfos.size(),3);
+         assertEquals(connectionInfos.size(), 3);
          for (ConnectionInfo connectionInfo : connectionInfos)
          {
             assertEquals(connectionInfo.getUser(), "guest");
@@ -295,23 +295,23 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
-         if(conn2 != null)
+         if (conn2 != null)
          {
             conn2.close();
          }
-         if(conn3 != null)
+         if (conn3 != null)
          {
             conn3.close();
          }
-         if(conn4 != null)
+         if (conn4 != null)
          {
             conn4.close();
          }
-         if(conn5 != null)
+         if (conn5 != null)
          {
             conn5.close();
          }
@@ -335,7 +335,7 @@
          jmsServerManager.dropConnection(connectionInfos.get(0).getId());
          connectionInfos = jmsServerManager.getConnections();
          assertNotNull(connectionInfos);
-         assertEquals(connectionInfos.size(),4);
+         assertEquals(connectionInfos.size(), 4);
          for (ConnectionInfo connectionInfo : connectionInfos)
          {
             assertNotSame(connectionInfo.getUser(), "john");
@@ -352,19 +352,19 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
-         if(conn2 != null)
+         if (conn2 != null)
          {
             conn2.close();
          }
-         if(conn3 != null)
+         if (conn3 != null)
          {
             conn3.close();
          }
-         if(conn5 != null)
+         if (conn5 != null)
          {
             conn5.close();
          }
@@ -385,7 +385,7 @@
          jmsServerManager.dropConnectionForUser("guest");
          List<ConnectionInfo> connectionInfos = jmsServerManager.getConnections();
          assertNotNull(connectionInfos);
-         assertEquals(connectionInfos.size(),3);
+         assertEquals(connectionInfos.size(), 3);
          for (ConnectionInfo connectionInfo : connectionInfos)
          {
             assertNotSame(connectionInfo.getUser(), "guest");
@@ -411,21 +411,22 @@
       }
       finally
       {
-         if(conn2 != null)
+         if (conn2 != null)
          {
             conn2.close();
          }
-         if(conn3 != null)
+         if (conn3 != null)
          {
             conn3.close();
          }
-         if(conn4 != null)
+         if (conn4 != null)
          {
             conn4.close();
          }
       }
 
    }
+
    public void test() throws Exception
    {
       Connection conn = getConnectionFactory().createConnection("guest", "guest");
@@ -618,7 +619,7 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
@@ -681,7 +682,7 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
@@ -721,7 +722,7 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
@@ -763,11 +764,112 @@
       }
       finally
       {
-         if(conn != null)
+         if (conn != null)
          {
             conn.close();
          }
       }
 
    }
+
+   public void testChangeMessagePriority() throws Exception
+   {
+      Connection conn = getConnectionFactory().createConnection("guest", "guest");
+      try
+      {
+         Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+         MessageProducer producer = sess.createProducer(queue1);
+         producer.setPriority(9);
+         Message messageToMove = null;
+         for (int i = 0; i < 10; i++)
+         {
+            TextMessage message = sess.createTextMessage();
+
+            producer.send(message);
+            if (i == 5)
+            {
+               messageToMove = message;
+            }
+         }
+         jmsServerManager.changeMessagePriority("Queue1", messageToMove.getJMSMessageID(), 8);
+         MessageConsumer consumer = sess.createConsumer(queue1);
+         conn.start();
+         for (int i = 0; i < 9; i++)
+         {
+            Message message = consumer.receive();
+            assertNotSame(messageToMove.getJMSMessageID(), message.getJMSMessageID());
+            System.out.println("message.getJMSPriority() = " + message.getJMSPriority());
+            assertEquals(9, message.getJMSPriority());
+         }
+         Message message = consumer.receive();
+         assertEquals(8, message.getJMSPriority());
+         assertEquals(messageToMove.getJMSMessageID(), message.getJMSMessageID());
+
+         consumer.close();
+
+      }
+      finally
+      {
+         if (conn != null)
+         {
+            conn.close();
+         }
+      }
+
+   }
+
+   public void testChangeMessageHeader() throws Exception
+   {
+      Connection conn = getConnectionFactory().createConnection("guest", "guest");
+      try
+      {
+         Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+         MessageProducer producer = sess.createProducer(queue1);
+         Message messageToMove = null;
+
+         TextMessage message = sess.createTextMessage();
+         message.setStringProperty("MyString", "12345");
+         message.setBooleanProperty("MyBoolean", true);
+         message.setByteProperty("MyByte", (byte) 1);
+         message.setDoubleProperty("MyDouble", 0.0);
+         message.setFloatProperty("MyFloat", 0.0f);
+         message.setIntProperty("MyInt", 0);
+         message.setObjectProperty("MyObject", new String("test"));
+         message.setLongProperty("MyLong", 0l);
+         message.setShortProperty("MyShort", (short)0);
+
+         producer.send(message);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyString", "abcde");
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyBoolean", false);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyByte", (byte)2);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyDouble", 0.1);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyFloat", 0.1f);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyInt", 1);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyObject", new Long(0));
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyLong", 1l);
+         jmsServerManager.changeMessageHeader("Queue1", message.getJMSMessageID(), "MyShort", (short)1);
+         MessageConsumer consumer = sess.createConsumer(queue1);
+         conn.start();
+
+         message = (TextMessage) consumer.receive();
+         assertEquals(message.getStringProperty("MyString"), "abcde");
+         assertEquals(message.getBooleanProperty("MyBoolean"), false);
+         assertEquals(message.getByteProperty("MyByte"), (byte)2);
+         assertEquals(message.getDoubleProperty("MyDouble"), 0.1);
+         assertEquals(message.getIntProperty("MyInt"), 1);
+         assertEquals(message.getObjectProperty("MyObject").getClass(), Long.class);
+         assertEquals(message.getLongProperty("MyLong"), 1l);
+         assertEquals(message.getShortProperty("MyShort"), (short)1);
+         consumer.close();
+
+      }
+      finally
+      {
+         if (conn != null)
+         {
+            conn.close();
+         }
+      }
+
+   }
 }




More information about the jboss-cvs-commits mailing list