Author: davsclaus Date: Tue Jan 17 09:43:07 2012 New Revision: 1232365 URL: http://svn.apache.org/viewvc?rev=1232365&view=rev Log: CAMEL-4906: Allow to easily configure JMX naming using managementNamePattern attribute on CamelContext.
Added: camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ManagedNamePatternFixedTest.java - copied, changed from r1232308, camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/DebugBlueprintTest.java camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/ camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/managedNamePatternFixedTest.xml - copied, changed from r1232308, camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/camelContext.xml Copied: camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ManagedNamePatternFixedTest.java (from r1232308, camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/DebugBlueprintTest.java) URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ManagedNamePatternFixedTest.java?p2=camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ManagedNamePatternFixedTest.java&p1=camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/DebugBlueprintTest.java&r1=1232308&r2=1232365&rev=1232365&view=diff ============================================================================== --- camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/DebugBlueprintTest.java (original) +++ camel/trunk/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/management/ManagedNamePatternFixedTest.java Tue Jan 17 09:43:07 2012 @@ -14,31 +14,38 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.camel.test.blueprint; +package org.apache.camel.test.blueprint.management; import java.net.URL; import java.util.Collection; import java.util.Collections; +import javax.management.MBeanServer; +import javax.management.ObjectName; + +import org.apache.camel.test.blueprint.CamelBlueprintTestSupport; import org.junit.Test; -public class DebugBlueprintTest extends CamelBlueprintTestSupport { +public class ManagedNamePatternFixedTest extends CamelBlueprintTestSupport { @Override protected Collection<URL> getBlueprintDescriptors() { - return Collections.singleton(getClass().getResource("camelContext.xml")); + return Collections.singleton(getClass().getResource("managedNamePatternFixedTest.xml")); } @Test - public void testRoute() throws Exception { - // set mock expectations - getMockEndpoint("mock:a").expectedMessageCount(1); - - // send a message + public void testManagedNamePattern() throws Exception { + getMockEndpoint("mock:result").expectedMessageCount(1); template.sendBody("direct:start", "World"); - - // assert mocks assertMockEndpointsSatisfied(); + + MBeanServer mbeanServer = context.getManagementStrategy().getManagementAgent().getMBeanServer(); + + assertEquals("cool", context.getManagementName()); + + ObjectName on = ObjectName.getInstance("org.apache.camel:context=localhost/" + context.getManagementName() + + ",type=context,name=\"" + context.getName() + "\""); + assertTrue("Should be registered", mbeanServer.isRegistered(on)); } } Copied: camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/managedNamePatternFixedTest.xml (from r1232308, camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/camelContext.xml) URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/managedNamePatternFixedTest.xml?p2=camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/managedNamePatternFixedTest.xml&p1=camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/camelContext.xml&r1=1232308&r2=1232365&rev=1232365&view=diff ============================================================================== --- camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/camelContext.xml (original) +++ camel/trunk/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/management/managedNamePatternFixedTest.xml Tue Jan 17 09:43:07 2012 @@ -17,16 +17,19 @@ --> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"> + <bean id="naming" class="org.apache.camel.management.DefaultManagementNamingStrategy"> + <property name="hostName" value="localhost"/> + <property name="domainName" value="org.apache.camel"/> + </bean> - <camelContext id="camelContext" xmlns="http://camel.apache.org/schema/blueprint" trace="true" autoStartup="true" > + <!-- START SNIPPET: example --> + <camelContext managementNamePattern="cool" xmlns="http://camel.apache.org/schema/blueprint"> + <jmxAgent id="agent"/> - <route> - <from uri="direct:start" /> - <transform> - <simple>Hello ${body}</simple> - </transform> - <to uri="mock:a" /> - </route> - </camelContext> + <route> + <from uri="direct:start"/> + <to uri="mock:result"/> + </route> + </camelContext> </blueprint> \ No newline at end of file