Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/activemq/io/util/MemoryBoundedPrioritizedQueueTest.java


1   /** 
2    * 
3    * Copyright 2004 Protique Ltd
4    * 
5    * Licensed under the Apache License, Version 2.0 (the "License"); 
6    * you may not use this file except in compliance with the License. 
7    * You may obtain a copy of the License at 
8    * 
9    * http://www.apache.org/licenses/LICENSE-2.0
10   * 
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS, 
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
14   * See the License for the specific language governing permissions and 
15   * limitations under the License. 
16   * 
17   **/
18  
19  package org.activemq.io.util;
20  
21  import org.activemq.message.ActiveMQMessage;
22  
23  /**
24   * @author Ramzi Saba
25   *
26  * @version $Revision: 1.1.1.1 $
27   */
28  public class MemoryBoundedPrioritizedQueueTest extends MemoryBoundedQueueTest {
29  
30    public void setUp() throws Exception {
31      supportJMSPriority = true;
32      super.setUp();
33    }
34  
35      public void testMessagePriority() throws Exception {
36          MemoryBoundedQueue queue = getQueueManager().getMemoryBoundedQueue(QUEUE_NAME);
37          getMemoryManager().setValueLimit(TEST_INSTANCE_SIZE*3);
38          ActiveMQMessage msg1 = new ActiveMQMessage();  // default priority is 4
39          ActiveMQMessage msg2 = new ActiveMQMessage();
40          msg2.setJMSPriority(2);  // low priority message
41          ActiveMQMessage msg3 = new ActiveMQMessage();
42          msg3.setJMSPriority(9);  // high priority message
43  
44          queue.enqueueNoBlock(msg1);
45          queue.enqueueNoBlock(msg2);
46          queue.enqueueNoBlock(msg3);
47          
48          Object result1 = queue.dequeue();
49          Object result2 = queue.dequeue();
50          Object result3 = queue.dequeue();
51                  
52          assertTrue(result1 == msg3);
53          assertTrue(result2 == msg1);
54          assertTrue(result3 == msg2);
55          
56          queue.close();      
57      }
58  
59  }