Author: chirino
Date: Wed Feb 15 13:39:54 2006
New Revision: 378100
URL: http://svn.apache.org/viewcvs?rev=378100&view=rev
Log:
Added a testcase that shows to do more detailed configuration of the JMX
mangement context.
Added:
incubator/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/xbean/ManagementContextXBeanConfigTest.java
incubator/activemq/trunk/activemq-core/src/test/resources/org/apache/activemq/xbean/management-context-test.xml
Modified:
incubator/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java
Modified:
incubator/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java
URL:
http://svn.apache.org/viewcvs/incubator/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java?rev=378100&r1=378099&r2=378100&view=diff
==============================================================================
---
incubator/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java
(original)
+++
incubator/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java
Wed Feb 15 13:39:54 2006
@@ -919,7 +919,7 @@
Hashtable map = new Hashtable();
map.put("Type", "Broker");
map.put("BrokerName",
JMXSupport.encodeObjectNamePart(getBrokerName()));
- return new ObjectName("org.apache.activemq", map);
+ return new ObjectName(getManagementContext().getJmxDomainName(),
map);
}
catch (Throwable e) {
throw IOExceptionSupport.create("Invalid JMX broker name: " +
brokerName, e);
Added:
incubator/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/xbean/ManagementContextXBeanConfigTest.java
URL:
http://svn.apache.org/viewcvs/incubator/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/xbean/ManagementContextXBeanConfigTest.java?rev=378100&view=auto
==============================================================================
---
incubator/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/xbean/ManagementContextXBeanConfigTest.java
(added)
+++
incubator/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/xbean/ManagementContextXBeanConfigTest.java
Wed Feb 15 13:39:54 2006
@@ -0,0 +1,73 @@
+/**
+ *
+ * Copyright 2005-2006 The Apache Software Foundation
+ *
+ * Licensed 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.xbean;
+
+import java.net.URI;
+import java.util.Hashtable;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+
+import junit.framework.TestCase;
+
+import org.apache.activemq.broker.BrokerFactory;
+import org.apache.activemq.broker.BrokerService;
+import org.apache.activemq.util.JMXSupport;
+
+/**
+ *
+ * @version $Revision: 1.1 $
+ */
+public class ManagementContextXBeanConfigTest extends TestCase {
+
+ protected BrokerService brokerService;
+
+ public void testManagmentContextConfiguredCorrectly() throws Throwable {
+
+ assertEquals(2011,
brokerService.getManagementContext().getConnectorPort());
+ assertEquals("test.domain",
brokerService.getManagementContext().getJmxDomainName());
+
+ MBeanServer beanServer =
brokerService.getManagementContext().getMBeanServer();
+
+
+ // Make sure the broker is registered in the right jmx domain.
+ Hashtable map = new Hashtable();
+ map.put("Type", "Broker");
+ map.put("BrokerName", JMXSupport.encodeObjectNamePart("localhost"));
+ ObjectName on = new ObjectName("test.domain", map);
+
+ Object value = beanServer.getAttribute(on, "TotalEnqueueCount");
+ assertNotNull(value);
+ }
+
+ protected void setUp() throws Exception {
+ brokerService = createBroker();
+ brokerService.start();
+ }
+
+ protected void tearDown() throws Exception {
+ if (brokerService != null) {
+ brokerService.stop();
+ }
+ }
+
+ protected BrokerService createBroker() throws Exception {
+ String uri = "org/apache/activemq/xbean/management-context-test.xml";
+ return BrokerFactory.createBroker(new URI("xbean:"+uri));
+ }
+
+}
Added:
incubator/activemq/trunk/activemq-core/src/test/resources/org/apache/activemq/xbean/management-context-test.xml
URL:
http://svn.apache.org/viewcvs/incubator/activemq/trunk/activemq-core/src/test/resources/org/apache/activemq/xbean/management-context-test.xml?rev=378100&view=auto
==============================================================================
---
incubator/activemq/trunk/activemq-core/src/test/resources/org/apache/activemq/xbean/management-context-test.xml
(added)
+++
incubator/activemq/trunk/activemq-core/src/test/resources/org/apache/activemq/xbean/management-context-test.xml
Wed Feb 15 13:39:54 2006
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2005-2006 The Apache Software Foundation
+
+ Licensed 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.
+-->
+
+<!-- this file can only be parsed using the xbean-spring library -->
+<!-- START SNIPPET: xbean -->
+<beans xmlns="http://activemq.org/config/1.0">
+
+ <broker useJmx="true">
+ <managementContext>
+ <managementContext connectorPort="2011" jmxDomainName="test.domain"/>
+ </managementContext>
+ </broker>
+
+</beans>
+<!-- END SNIPPET: xbean -->