Author: robbie
Date: Mon Jul 13 10:21:19 2009
New Revision: 793531
URL: http://svn.apache.org/viewvc?rev=793531&view=rev
Log:
QPID-1943: expose exchange mbeans tabular/composite key values through the
management interface
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DirectExchange.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/TopicExchange.java
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
Mon Jul 13 10:21:19 2009
@@ -69,8 +69,6 @@
protected abstract class ExchangeMBean extends AMQManagedObject implements
ManagedExchange
{
// open mbean data types for representing exchange bindings
- protected String[] _bindingItemNames;
- protected String[] _bindingItemIndexNames;
protected OpenType[] _bindingItemTypes;
protected CompositeType _bindingDataType;
protected TabularType _bindinglistDataType;
@@ -82,17 +80,14 @@
}
protected void init() throws OpenDataException
- {
- _bindingItemNames = new String[]{"Binding Key", "Queue Names"};
- _bindingItemIndexNames = new String[]{_bindingItemNames[0]};
-
+ {
_bindingItemTypes = new OpenType[2];
_bindingItemTypes[0] = SimpleType.STRING;
_bindingItemTypes[1] = new ArrayType(1, SimpleType.STRING);
_bindingDataType = new CompositeType("Exchange Binding", "Binding
key and Queue names",
- _bindingItemNames,
_bindingItemNames, _bindingItemTypes);
+ COMPOSITE_ITEM_NAMES, COMPOSITE_ITEM_DESCRIPTIONS,
_bindingItemTypes);
_bindinglistDataType = new TabularType("Exchange Bindings",
"Exchange Bindings for " + getName(),
- _bindingDataType,
_bindingItemIndexNames);
+ _bindingDataType,
TABULAR_UNIQUE_INDEX);
}
public ManagedObject getParentObject()
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DirectExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DirectExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DirectExchange.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DirectExchange.java
Mon Jul 13 10:21:19 2009
@@ -114,7 +114,7 @@
}
Object[] bindingItemValues = {key.toString(),
queueList.toArray(new String[0])};
- CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, _bindingItemNames, bindingItemValues);
+ CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, COMPOSITE_ITEM_NAMES, bindingItemValues);
_bindingList.put(bindingData);
}
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
Mon Jul 13 10:21:19 2009
@@ -77,7 +77,7 @@
String queueName = queue.getName().toString();
Object[] bindingItemValues = {queueName, new
String[]{queueName}};
- CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, _bindingItemNames, bindingItemValues);
+ CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, COMPOSITE_ITEM_NAMES, bindingItemValues);
_bindingList.put(bindingData);
}
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
Mon Jul 13 10:21:19 2009
@@ -84,8 +84,6 @@
{
private static final Logger _logger =
Logger.getLogger(HeadersExchange.class);
-
-
public static final ExchangeType<HeadersExchange> TYPE = new
ExchangeType<HeadersExchange>()
{
@@ -137,17 +135,15 @@
*/
protected void init() throws OpenDataException
{
- _bindingItemNames = new String[]{"Binding No", "Queue Name",
"Queue Bindings"};
- _bindingItemIndexNames = new String[]{_bindingItemNames[0]};
_bindingItemTypes = new OpenType[3];
_bindingItemTypes[0] = SimpleType.INTEGER;
_bindingItemTypes[1] = SimpleType.STRING;
_bindingItemTypes[2] = new ArrayType(1, SimpleType.STRING);
_bindingDataType = new CompositeType("Exchange Binding", "Queue
name and header bindings",
- _bindingItemNames,
_bindingItemNames, _bindingItemTypes);
+ HEADERS_COMPOSITE_ITEM_NAMES, HEADERS_COMPOSITE_ITEM_DESC,
_bindingItemTypes);
_bindinglistDataType = new TabularType("Exchange Bindings", "List
of exchange bindings for " + getName(),
- _bindingDataType,
_bindingItemIndexNames);
+ _bindingDataType,
HEADERS_TABULAR_UNIQUE_INDEX);
}
public TabularData bindings() throws OpenDataException
@@ -180,7 +176,7 @@
Object[] bindingItemValues = {count++, queueName,
mappingList.toArray(new String[0])};
- CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, _bindingItemNames, bindingItemValues);
+ CompositeData bindingData = new
CompositeDataSupport(_bindingDataType, HEADERS_COMPOSITE_ITEM_NAMES,
bindingItemValues);
_bindingList.put(bindingData);
}
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/TopicExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/TopicExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/TopicExchange.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/TopicExchange.java
Mon Jul 13 10:21:19 2009
@@ -336,7 +336,7 @@
for(Map.Entry<String, List<String>> entry : bindingData.entrySet())
{
Object[] bindingItemValues = {entry.getKey(),
entry.getValue().toArray(new String[entry.getValue().size()]) };
- CompositeData bindingCompositeData = new
CompositeDataSupport(_bindingDataType, _bindingItemNames, bindingItemValues);
+ CompositeData bindingCompositeData = new
CompositeDataSupport(_bindingDataType, COMPOSITE_ITEM_NAMES, bindingItemValues);
_bindingList.put(bindingCompositeData);
}
Modified:
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java?rev=793531&r1=793530&r2=793531&view=diff
==============================================================================
---
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
(original)
+++
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
Mon Jul 13 10:21:19 2009
@@ -40,6 +40,18 @@
{
static final String TYPE = "Exchange";
static final int VERSION = 1;
+
+ //TabularType and contained CompositeType key/description info for
DIRECT/TOPIC/FANOUT exchanges.
+ //For compatibility reasons, DONT MODIFY the existing key values if
expanding the set.
+ String[] COMPOSITE_ITEM_NAMES = {"Binding Key", "Queue Names"};
+ String[] COMPOSITE_ITEM_DESCRIPTIONS = {"Binding Key", "Queue Names"};
+ String[] TABULAR_UNIQUE_INDEX = {COMPOSITE_ITEM_NAMES[0]};
+
+ //TabularType and contained CompositeType key/description info for HEADERS
exchange only.
+ //For compatibility reasons, DONT MODIFY the existing key values if
expanding the set.
+ String[] HEADERS_COMPOSITE_ITEM_NAMES = new String[]{"Binding No", "Queue
Name", "Queue Bindings"};
+ String[] HEADERS_COMPOSITE_ITEM_DESC = new String[]{"Binding No", "Queue
Name", "Queue Bindings"};
+ String[] HEADERS_TABULAR_UNIQUE_INDEX = new
String[]{HEADERS_COMPOSITE_ITEM_NAMES[0]};
/**
* Returns the name of the managed exchange.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]