private void createTopLevelServiceBeanWithMetaData(String contextId, DeploymentUnit unit, T deployment) { // Provide a constructor for the service bean ServiceConstructorMetaData serviceConstructor = new ServiceConstructorMetaData(); serviceConstructor.setSignature(new String[]{String.class.getName(), this.getMetaDataClassType().getName(), Boolean.class.getName()}); serviceConstructor.setParameters(new Object[]{contextId, deployment, Boolean.TRUE}); createJaccPolicyBean(serviceConstructor, unit); }
ServiceConstructorMetaData result = new ServiceConstructorMetaData(); result.setParams(params); result.setSignature(signature);
private void addConstructor(ServiceMetaData metaData, Element mbean) throws Exception { ServiceConstructorMetaData constructorMetaData = metaData.getConstructor(); if(constructorMetaData == null) return; Element constructor = document.createElement("constructor"); String[] params = constructorMetaData.getParams(); if(params == null || params.length == 0) return; String[] signature = constructorMetaData.getSignature(); if(signature.length != params.length) return; // this should actually not happen int i = params.length; for(int j = 0; j < i; j++) { Element arg = document.createElement("arg"); arg.setAttribute("type", signature[j]); arg.setAttribute("value", params[j]); constructor.appendChild(arg); } mbean.appendChild(constructor); }
public ServiceConstructorMetaData buildConstructor(ManagedConnectionFactoryDeploymentMetaData mcfmd) { ServiceConstructorMetaData constructor = new ServiceConstructorMetaData(); constructor.setParameters(new Object[]{}); constructor.setParams(new String[]{}); return constructor; }
/** * 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); }
return EMPTY_PARAMETERS; String[] signature = getSignature();
constructor.getParameters(loader), constructor.getSignature());
return EMPTY_PARAMETERS; String[] signature = getSignature();
@Override public ServiceConstructorMetaData buildConstructor(ManagedConnectionFactoryDeploymentMetaData mcfmd) { ServiceConstructorMetaData constructor = new ServiceConstructorMetaData(); ConnectorMetaData md = repository.getConnectorMetaData(mcfmd.getRarName()); if( md == null ) throw new IllegalStateException("No ConnectorMetaData found for mdf rarName: "+mcfmd.getRarName()); constructor.setParameters(new Object[]{md, mcfmd, getConnectionManager(mcfmd)}); constructor.setSignature(new String[]{md.getClass().getName(), ManagedConnectionFactoryDeploymentMetaData.class.getName(), String.class.getName()}); return constructor; }
ServiceConstructorMetaData result = new ServiceConstructorMetaData(); result.setParams(params); result.setSignature(signature);
constructor.getParameters(loader), constructor.getSignature());
private void addConstructor(ServiceMetaData metaData, Element mbean) throws Exception { ServiceConstructorMetaData constructorMetaData = metaData.getConstructor(); if(constructorMetaData == null) return; Element constructor = document.createElement("constructor"); String[] params = constructorMetaData.getParams(); if(params == null || params.length == 0) return; String[] signature = constructorMetaData.getSignature(); if(signature.length != params.length) return; // this should actually not happen int i = params.length; for(int j = 0; j < i; j++) { Element arg = document.createElement("arg"); arg.setAttribute("type", signature[j]); arg.setAttribute("value", params[j]); constructor.appendChild(arg); } mbean.appendChild(constructor); }
rarDeployment.setObjectName(objectName); rarDeployment.setCode(RARDeployment.class.getName()); ServiceConstructorMetaData constructor = new ServiceConstructorMetaData(); constructor.setSignature(new String[] { RARDeploymentMetaData.class.getName() }); constructor.setParameters(new Object[] { rdmd }); rarDeployment.setConstructor(constructor);
constructor.getParameters(loader), constructor.getSignature());
ServiceConstructorMetaData serviceConstructor = new ServiceConstructorMetaData(); serviceConstructor.setSignature(new String[]{String.class.getName(), getMetaDataClassType().getName()}); serviceConstructor.setParameters(new Object[]{deploymentName, metaData}); subjaccPolicy.setConstructor(serviceConstructor);
constructor.getParameters(loader), constructor.getSignature());
webModule.setCode(WebModule.class.getName()); ServiceConstructorMetaData constructor = new ServiceConstructorMetaData(); constructor.setSignature(new String[] { DeploymentUnit.class.getName(), AbstractWarDeployer.class.getName(), AbstractWarDeployment.class.getName() }); constructor.setParameters(new Object[] { unit, this, deployment }); webModule.setConstructor(constructor);
constructor.getParameters(loader), constructor.getSignature());
ServiceConstructorMetaData ctor = new ServiceConstructorMetaData(); ctor.setSignature( new String[]{VFSDeploymentUnit.class.getName(), ApplicationMetaData.class.getName()} ); ctor.setParameters(new Object[]{unit, legacyMD}); ejbModule.setConstructor(ctor);
/** * 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); }