KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > activemq > usecases > CompositeConsumeTest


1 /**
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one or more
4  * contributor license agreements. See the NOTICE file distributed with
5  * this work for additional information regarding copyright ownership.
6  * The ASF licenses this file to You under the Apache License, Version 2.0
7  * (the "License"); you may not use this file except in compliance with
8  * the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */

18 package org.apache.activemq.usecases;
19
20 import org.apache.activemq.command.ActiveMQTopic;
21 import org.apache.activemq.test.JmsTopicSendReceiveWithTwoConnectionsTest;
22
23 import javax.jms.Destination JavaDoc;
24 import javax.jms.Message JavaDoc;
25
26 /**
27  * @version $Revision: 1.1.1.1 $
28  */

29 public class CompositeConsumeTest extends JmsTopicSendReceiveWithTwoConnectionsTest {
30
31     public void testSendReceive() throws Exception JavaDoc {
32         messages.clear();
33
34         Destination JavaDoc[] destinations = getDestinations();
35         int destIdx = 0;
36
37         for (int i = 0; i < data.length; i++) {
38             Message JavaDoc message = session.createTextMessage(data[i]);
39
40             if (verbose) {
41                 log.info("About to send a message: " + message + " with text: " + data[i]);
42             }
43
44             producer.send(destinations[destIdx], message);
45
46             if (++destIdx >= destinations.length) {
47                 destIdx = 0;
48             }
49         }
50
51         assertMessagesAreReceived();
52     }
53
54     /**
55      * Returns the subscription subject
56      */

57     protected String JavaDoc getSubject() {
58         return getPrefix() + "FOO.BAR," + getPrefix() + "FOO.X.Y," + getPrefix() + "BAR.>";
59     }
60
61     /**
62      * Returns the destinations on which we publish
63      */

64     protected Destination JavaDoc[] getDestinations() {
65         return new Destination JavaDoc[]{new ActiveMQTopic(getPrefix() + "FOO.BAR"), new ActiveMQTopic(getPrefix() + "BAR.WHATNOT.XYZ"), new ActiveMQTopic(getPrefix() + "FOO.X.Y")};
66     }
67
68     protected String JavaDoc getPrefix() {
69         return super.getSubject() + ".";
70     }
71 }
72
Popular Tags