From e35c115e03606aa6b130c3288f46285542c6ef46 Mon Sep 17 00:00:00 2001 From: James Strachan Date: Thu, 27 Mar 2008 09:47:45 +0000 Subject: [PATCH] added a little test program showing how to browse ActiveMQ queues using Camel BrowsableEndpoints http://activemq.apache.org/camel/browsableendpoint.html git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@641756 13f79535-47bb-0310-9956-ffa450edef68 --- activemq-core/pom.xml | 8 +++ .../camel/component/BrowseQueuesInUFace.java | 69 +++++++++++++++++++ .../component/BrowseQueuesInUFace-context.xml | 37 ++++++++++ 3 files changed, 114 insertions(+) create mode 100644 activemq-core/src/test/java/org/apache/activemq/camel/component/BrowseQueuesInUFace.java create mode 100644 activemq-core/src/test/resources/org/apache/activemq/camel/component/BrowseQueuesInUFace-context.xml diff --git a/activemq-core/pom.xml b/activemq-core/pom.xml index baa81a172a..2d7f7a54da 100755 --- a/activemq-core/pom.xml +++ b/activemq-core/pom.xml @@ -218,6 +218,14 @@ test + + + org.apache.camel + camel-swing + ${camel-version} + test + + commons-collections diff --git a/activemq-core/src/test/java/org/apache/activemq/camel/component/BrowseQueuesInUFace.java b/activemq-core/src/test/java/org/apache/activemq/camel/component/BrowseQueuesInUFace.java new file mode 100644 index 0000000000..aadb54d4ac --- /dev/null +++ b/activemq-core/src/test/java/org/apache/activemq/camel/component/BrowseQueuesInUFace.java @@ -0,0 +1,69 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.camel.component; + +import org.apache.activemq.camel.SetHeaderTest; +import org.apache.camel.CamelContext; +import org.apache.camel.CamelTemplate; +import org.apache.camel.component.uface.swing.SwingBrowser; +import org.apache.camel.impl.DefaultCamelContext; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit38.AbstractJUnit38SpringContextTests; + +/** + * @version $Revision: 1.1 $ + */ +@ContextConfiguration +public class BrowseQueuesInUFace extends AbstractJUnit38SpringContextTests { + private static final transient Log LOG = LogFactory.getLog(SetHeaderTest.class); + @Autowired + protected CamelContext camelContext; + @Autowired + protected CamelTemplate template; + protected String[] queueNames = {"Sample.A", "Sample.B", "Sample.C"}; + + public void testBrowseQueues() throws Exception { + // lets send a bunch of messages + for (int i = 0; i < queueNames.length; i++) { + String queueName = queueNames[i]; + sendMessagesToQueue(queueName, i); + } + + Thread.sleep(2000); + + // now lets spin up a browser + SwingBrowser browser = new SwingBrowser((DefaultCamelContext) camelContext); + browser.run(); + + // now lets sleep a while... + Thread.sleep(50000); + } + + protected void sendMessagesToQueue(String queueName, int index) { + String uri = "activemq:" + queueName; + int count = index * 2 + 2; + for (int i = 0; i < count; i++) { + Object body = "Message: " + i; + template.sendBodyAndHeader(uri, body, "counter", i); + } + System.out.println("Sent " + count + " messages to: " + uri); + } +} \ No newline at end of file diff --git a/activemq-core/src/test/resources/org/apache/activemq/camel/component/BrowseQueuesInUFace-context.xml b/activemq-core/src/test/resources/org/apache/activemq/camel/component/BrowseQueuesInUFace-context.xml new file mode 100644 index 0000000000..03c0fc3112 --- /dev/null +++ b/activemq-core/src/test/resources/org/apache/activemq/camel/component/BrowseQueuesInUFace-context.xml @@ -0,0 +1,37 @@ + + + + + + +