| 1 17 package org.apache.servicemix.jbi.management; 18 19 import javax.jbi.management.AdminServiceMBean; 20 import javax.management.MBeanServerConnection ; 21 import javax.management.MBeanServerInvocationHandler ; 22 import javax.management.ObjectName ; 23 import javax.management.remote.JMXConnector ; 24 import javax.management.remote.JMXConnectorFactory ; 25 import javax.management.remote.JMXServiceURL ; 26 27 import junit.framework.TestCase; 28 29 import org.apache.commons.logging.Log; 30 import org.apache.commons.logging.LogFactory; 31 import org.apache.servicemix.jbi.container.JBIContainer; 32 33 36 public class AdminServiceTest extends TestCase { 37 38 private Log log = LogFactory.getLog(getClass()); 39 40 private JBIContainer container; 41 42 private String namingHost = "localhost"; 44 private int namingPort = ManagementContext.DEFAULT_CONNECTOR_PORT; 45 private String jndiPath = ManagementContext.DEFAULT_CONNECTOR_PATH; 46 47 protected void setUp() throws Exception { 48 container = new JBIContainer(); 49 container.setRmiPort(namingPort); 50 container.setCreateMBeanServer(true); 51 container.init(); 52 } 53 54 protected void tearDown() throws Exception { 55 container.shutDown(); 56 } 57 58 public void testAdminService() throws Exception { 59 JMXServiceURL url = new JMXServiceURL ("service:jmx:rmi:///jndi/rmi://" 61 + namingHost + ":" + namingPort + jndiPath); 62 JMXConnector connector = JMXConnectorFactory.connect(url); 64 MBeanServerConnection connection = connector.getMBeanServerConnection(); 67 ObjectName asmName = getObjectName(ManagementContext.class); 69 Object proxy = MBeanServerInvocationHandler.newProxyInstance(connection, asmName, 70 AdminServiceMBean.class, true); 71 AdminServiceMBean asm = (AdminServiceMBean) proxy; 72 73 log.info(asm.getBindingComponents()); 74 log.info(asm.getComponentByName("toto")); 75 } 76 77 protected ObjectName getObjectName (Class systemClass){ 78 return ManagementContext.getSystemObjectName(ManagementContext.DEFAULT_DOMAIN, JBIContainer.DEFAULT_NAME, systemClass); 79 } 80 } 81 | Popular Tags |