summaryrefslogtreecommitdiff
path: root/java/broker-plugins/extras/src
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2010-05-31 16:07:44 +0000
committerRobert Gemmell <robbie@apache.org>2010-05-31 16:07:44 +0000
commit74cbc1d33f7dfa9f97c2e11a67c85415a559f6d5 (patch)
treea0129c61cbbd61a7fc61a40a1386d6954fe6cd5e /java/broker-plugins/extras/src
parent89c0b02beeb0fa9463cc3da0abd6f0af3aba3284 (diff)
downloadqpid-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.java63
-rw-r--r--java/broker-plugins/extras/src/main/java/org/apache/qpid/extras/exchanges/example/TestExchange.java10
-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());
}
-
}