diff options
| author | Robert Gemmell <robbie@apache.org> | 2010-05-31 16:07:44 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2010-05-31 16:07:44 +0000 |
| commit | 74cbc1d33f7dfa9f97c2e11a67c85415a559f6d5 (patch) | |
| tree | a0129c61cbbd61a7fc61a40a1386d6954fe6cd5e /java/broker-plugins/extras/src | |
| parent | 89c0b02beeb0fa9463cc3da0abd6f0af3aba3284 (diff) | |
| download | qpid-python-74cbc1d33f7dfa9f97c2e11a67c85415a559f6d5.tar.gz | |
QPID-2585: Update extras OSGi plugin to work with latest interfaces
Applied patch from Andrew Kennedy <andrew.international@gmail.com>
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@949787 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins/extras/src')
| -rw-r--r-- | java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/DiagnosticExchange.java | 63 | ||||
| -rw-r--r-- | java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java | 10 | ||||
| -rw-r--r-- | java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/ExtrasTest.java (renamed from java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/PluginTest.java) | 28 |
3 files changed, 37 insertions, 64 deletions
diff --git a/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/DiagnosticExchange.java b/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/DiagnosticExchange.java index b497f192d6..4ab8a072b1 100644 --- a/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/DiagnosticExchange.java +++ b/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/diagnostic/DiagnosticExchange.java @@ -27,48 +27,35 @@ import javax.management.JMException; import javax.management.openmbean.OpenDataException; import javax.management.openmbean.TabularData; +import org.apache.log4j.Logger; import org.apache.qpid.AMQException; -import org.apache.qpid.exchange.ExchangeDefaults; import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.framing.FieldTable; +import org.apache.qpid.management.common.mbeans.annotations.MBeanConstructor; +import org.apache.qpid.management.common.mbeans.annotations.MBeanDescription; +import org.apache.qpid.server.binding.Binding; import org.apache.qpid.server.exchange.AbstractExchange; import org.apache.qpid.server.exchange.AbstractExchangeMBean; import org.apache.qpid.server.exchange.ExchangeType; -import org.apache.qpid.server.exchange.Exchange; -import org.apache.qpid.server.queue.AMQQueue; import org.apache.qpid.server.message.InboundMessage; -import org.apache.qpid.server.binding.Binding; +import org.apache.qpid.server.queue.AMQQueue; import org.apache.qpid.server.virtualhost.VirtualHost; -import org.apache.qpid.junit.extensions.util.SizeOf; -import org.apache.qpid.management.common.mbeans.annotations.MBeanConstructor; -import org.apache.qpid.management.common.mbeans.annotations.MBeanDescription; -import org.apache.log4j.Logger; - /** - * * This is a special diagnostic exchange type which doesn't actually do anything * with messages. When it receives a message, it writes information about the * current memory usage to the "memory" property of the message and places it on the * diagnosticqueue for retrieval - * - * @author Aidan Skinner - * */ - public class DiagnosticExchange extends AbstractExchange { - private static final Logger _logger = Logger.getLogger(DiagnosticExchange.class); - public static final AMQShortString DIAGNOSTIC_EXCHANGE_CLASS = new AMQShortString("x-diagnostic"); public static final AMQShortString DIAGNOSTIC_EXCHANGE_NAME = new AMQShortString("diagnostic"); - /** - * the logger. - */ - //private static final Logger _logger = Logger.getLogger(DiagnosticExchange.class); + /** The logger */ + //private static final Logger _logger = Logger.getLogger(DiagnosticExchange.class); /** * MBean class implementing the management interfaces. @@ -76,7 +63,6 @@ public class DiagnosticExchange extends AbstractExchange @MBeanDescription("Management Bean for Diagnostic Exchange") private final class DiagnosticExchangeMBean extends AbstractExchangeMBean<DiagnosticExchange> { - /** * Usual constructor. * @@ -95,9 +81,9 @@ public class DiagnosticExchange extends AbstractExchange * * @throws OpenDataException * @returns null - * @todo ... or can there? Could this actually return all the - * information in one easy to read table? + * TODO or can there? Could this actually return all the information in one easy to read table? */ + @Override public TabularData bindings() throws OpenDataException { return null; @@ -107,19 +93,16 @@ public class DiagnosticExchange extends AbstractExchange * This exchange type doesn't support queues, so this method does * nothing. * - * @param queueName - * the queue you'll fail to create - * @param binding - * the binding you'll fail to create - * @throws JMException - * an exception that will never be thrown + * @param queueName the queue you'll fail to create + * @param binding the binding you'll fail to create + * @throws JMException an exception that will never be thrown */ + @Override public void createNewBinding(String queueName, String binding) throws JMException { // No Op } - - } // End of MBean class + } public static final ExchangeType<DiagnosticExchange> TYPE = new ExchangeType<DiagnosticExchange>() @@ -167,7 +150,6 @@ public class DiagnosticExchange extends AbstractExchange protected AbstractExchangeMBean createMBean() throws JMException { return new DiagnosticExchange.DiagnosticExchangeMBean(); - } public Logger getLogger() @@ -203,20 +185,18 @@ public class DiagnosticExchange extends AbstractExchange public ArrayList<AMQQueue> doRoute(InboundMessage payload) { - + //TODO shouldn't modify messages... perhaps put a new message on the queue? + /* Long value = new Long(SizeOf.getUsedMemory()); AMQShortString key = new AMQShortString("memory"); - - //TODO shouldn't modify messages... perhaps put a new message on the queue? -/* FieldTable headers = ((BasicContentHeaderProperties)payload.getMessageHeader().properties).getHeaders(); + FieldTable headers = ((BasicContentHeaderProperties)payload.getMessageHeader().properties).getHeaders(); headers.put(key, value); - ((BasicContentHeaderProperties)payload.getMessageHeader().properties).setHeaders(headers);*/ + ((BasicContentHeaderProperties)payload.getMessageHeader().properties).setHeaders(headers); + */ AMQQueue q = getQueueRegistry().getQueue(new AMQShortString("diagnosticqueue")); - ArrayList<AMQQueue> queues = new ArrayList<AMQQueue>(); queues.add(q); return queues; - } @@ -226,14 +206,13 @@ public class DiagnosticExchange extends AbstractExchange return false; } - protected void onBind(final Binding binding) { - + // No op } protected void onUnbind(final Binding binding) { - + // No op } } diff --git a/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java b/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java index ace30b9b89..def0b3f91a 100644 --- a/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java +++ b/java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java @@ -21,6 +21,11 @@ package org.apache.qpid.extras.exchanges.example; */ +import java.util.ArrayList; +import java.util.Collection; +import java.util.Map; +import java.util.UUID; + import org.apache.qpid.AMQException; import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.framing.FieldTable; @@ -36,11 +41,6 @@ import org.apache.qpid.server.queue.AMQQueue; import org.apache.qpid.server.queue.BaseQueue; import org.apache.qpid.server.virtualhost.VirtualHost; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Map; -import java.util.UUID; - public class TestExchange implements Exchange { diff --git a/java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/PluginTest.java b/java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/ExtrasTest.java index 6f8f7a3a2a..57b6e19b5d 100644 --- a/java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/PluginTest.java +++ b/java/broker-plugins/extras/src/test/java/org/apache/qpid/server/plugins/ExtrasTest.java @@ -1,5 +1,4 @@ /* - * * 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 @@ -16,9 +15,7 @@ * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. - * */ - package org.apache.qpid.server.plugins; import junit.framework.TestCase; @@ -31,11 +28,12 @@ import org.apache.qpid.server.util.TestApplicationRegistry; import java.util.Map; -public class PluginTest extends TestCase +public class ExtrasTest extends TestCase { - private static final String TEST_EXCHANGE_CLASS = "org.apache.qpid.extras.exchanges.example.TestExchangeType"; + private static final String PLUGIN_DIRECTORY = System.getProperty("example.plugin.target"); + private static final String CACHE_DIRECTORY = System.getProperty("example.cache.target"); IApplicationRegistry _registry; @@ -43,10 +41,10 @@ public class PluginTest extends TestCase public void setUp() throws Exception { PropertiesConfiguration properties = new PropertiesConfiguration(); - properties.addProperty("plugin-directory", PLUGIN_DIRECTORY); - + properties.addProperty("cache-directory", CACHE_DIRECTORY); ServerConfiguration config = new ServerConfiguration(properties); + // This Test requires an application Registry ApplicationRegistry.initialise(new TestApplicationRegistry(config)); _registry = ApplicationRegistry.getInstance(); @@ -58,23 +56,19 @@ public class PluginTest extends TestCase ApplicationRegistry.remove(); } - public void testLoadExchanges() throws Exception { PluginManager manager = _registry.getPluginManager(); Map<String, ExchangeType<?>> exchanges = manager.getExchanges(); assertNotNull("No exchanges found in " + PLUGIN_DIRECTORY, exchanges); - assertEquals("Wrong number of exchanges found in " + PLUGIN_DIRECTORY, - 2, exchanges.size()); - assertNotNull("Wrong exchange found in " + PLUGIN_DIRECTORY, - exchanges.get(TEST_EXCHANGE_CLASS)); - } - + assertEquals("Wrong number of exchanges found in " + PLUGIN_DIRECTORY, 2, exchanges.size()); + assertNotNull("Wrong exchange found in " + PLUGIN_DIRECTORY, exchanges.get(TEST_EXCHANGE_CLASS)); + } + public void testNoExchanges() throws Exception { - PluginManager manager = new PluginManager("/path/to/nowhere"); + PluginManager manager = new PluginManager("/path/to/nowhere", "/tmp"); Map<String, ExchangeType<?>> exchanges = manager.getExchanges(); - assertEquals("Exchanges found", 0, exchanges.size()); + assertTrue("Exchanges found", exchanges.isEmpty()); } - } |
