You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2012/01/17 10:43:08 UTC

svn commit: r1232365 - in /camel/trunk/components/camel-test-blueprint/src/test: java/org/apache/camel/test/blueprint/management/ resources/org/apache/camel/test/blueprint/management/

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