private void setInterface(ServiceMetaData metaData, Element mbean) { if(metaData.getInterfaceName() != null) mbean.setAttribute("interface", metaData.getInterfaceName()); }
private void setInterface(ServiceMetaData metaData, Element mbean) { if(metaData.getInterfaceName() != null) mbean.setAttribute("interface", metaData.getInterfaceName()); }
/** * Install a StandardMBean * * @param server the mbean server * @param objectName the object name * @param metadata the service metadata * @return the installed instance * @throws Exception for any error */ private static ServiceInstance installStandardMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception { ObjectName loaderName = metaData.getClassLoaderName(); ClassLoader loader = server.getClassLoader(loaderName); String code = metaData.getCode(); ServiceConstructorMetaData constructor = metaData.getConstructor(); String interfaceName = metaData.getInterfaceName(); Class<?> intf = loader.loadClass(interfaceName); log.debug("About to create bean resource: " + objectName + " with code: " + code + " and interface " + interfaceName); Object resource = server.instantiate(code, loaderName, constructor.getParameters(loader), constructor.getSignature()); log.debug("About to register StandardMBean : " + objectName); ObjectInstance instance = server.createMBean(StandardMBean.class.getName(), objectName, loaderName, new Object[] { resource, intf }, new String[] { Object.class.getName() , Class.class.getName() }); return new ServiceInstance(instance, resource); }
String interfaceName = metaData.getInterfaceName(); if (interfaceName != null) result = installStandardMBean(server, objectName, metaData);
String interfaceName = metaData.getInterfaceName(); if (interfaceName != null) result = installStandardMBean(server, objectName, metaData);
/** * Install a StandardMBean * * @param server the mbean server * @param objectName the object name * @param metadata the service metadata * @return the installed instance * @throws Exception for any error */ private static ServiceInstance installStandardMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception { ObjectName loaderName = metaData.getClassLoaderName(); ClassLoader loader = server.getClassLoader(loaderName); String code = metaData.getCode(); ServiceConstructorMetaData constructor = metaData.getConstructor(); String interfaceName = metaData.getInterfaceName(); Class<?> intf = loader.loadClass(interfaceName); log.debugf("About to create bean resource:%1s with code: %2s and interface %3s", objectName, code, interfaceName); Object resource = server.instantiate(code, loaderName, constructor.getParameters(loader), constructor.getSignature()); log.debugf("About to register StandardMBean : %1s", objectName); ObjectInstance instance = server.createMBean(StandardMBean.class.getName(), objectName, loaderName, new Object[] { resource, intf }, new String[] { Object.class.getName() , Class.class.getName() }); return new ServiceInstance(instance, resource); }