@SuppressWarnings("unchecked") protected void deployServletProcessApplication(ServletProcessApplication processApplication) { ClassLoader contextClassloader = ClassLoaderUtil.getContextClassloader(); String moduleName = ((ModuleClassLoader)contextClassloader).getModule().getIdentifier().toString(); ServiceName serviceName = ServiceNames.forNoViewProcessApplicationStartService(moduleName); ServiceName paModuleService = ServiceNames.forProcessApplicationModuleService(moduleName); if(serviceContainer.getService(serviceName) == null) { ServiceController<ServiceTarget> requiredService = (ServiceController<ServiceTarget>) serviceContainer.getRequiredService(paModuleService); NoViewProcessApplicationStartService service = new NoViewProcessApplicationStartService(processApplication.getReference()); requiredService.getValue() .addService(serviceName, service) .setInitialMode(Mode.ACTIVE) .install(); } }
@SuppressWarnings("unchecked") protected void deployServletProcessApplication(ServletProcessApplication processApplication) { ClassLoader contextClassloader = ClassLoaderUtil.getContextClassloader(); String moduleName = ((ModuleClassLoader)contextClassloader).getModule().getIdentifier().toString(); ServiceName serviceName = ServiceNames.forNoViewProcessApplicationStartService(moduleName); ServiceName paModuleService = ServiceNames.forProcessApplicationModuleService(moduleName); if(serviceContainer.getService(serviceName) == null) { ServiceController<ServiceTarget> requiredService = (ServiceController<ServiceTarget>) serviceContainer.getRequiredService(paModuleService); NoViewProcessApplicationStartService service = new NoViewProcessApplicationStartService(processApplication.getReference()); requiredService.getValue() .addService(serviceName, service) .setInitialMode(Mode.ACTIVE) .install(); } }
@SuppressWarnings("unchecked") protected void deployServletProcessApplication(ServletProcessApplication processApplication) { ClassLoader contextClassloader = ClassLoaderUtil.getContextClassloader(); String moduleName = ((ModuleClassLoader)contextClassloader).getModule().getIdentifier().toString(); ServiceName serviceName = ServiceNames.forNoViewProcessApplicationStartService(moduleName); ServiceName paModuleService = ServiceNames.forProcessApplicationModuleService(moduleName); if(serviceContainer.getService(serviceName) == null) { ServiceController<ServiceTarget> requiredService = (ServiceController<ServiceTarget>) serviceContainer.getRequiredService(paModuleService); NoViewProcessApplicationStartService service = new NoViewProcessApplicationStartService(processApplication.getReference()); requiredService.getValue() .addService(serviceName, service) .setInitialMode(Mode.ACTIVE) .install(); } }
public static String getClassLoaderModuleName(ClassLoader classLoader) { if (classLoader instanceof ModuleClassLoader) { ModuleClassLoader moduleClassLoader = (ModuleClassLoader) classLoader; return moduleClassLoader.getModule().getName(); } throw new IllegalArgumentException("ClassLoader must be of type ModuleClassLoader"); } }
public static String getClassLoaderModuleName(ClassLoader classLoader) { if (classLoader instanceof ModuleClassLoader) { ModuleClassLoader moduleClassLoader = (ModuleClassLoader) classLoader; return moduleClassLoader.getModule().getName(); } throw new IllegalArgumentException("ClassLoader must be of type ModuleClassLoader"); } }
/** * Get the module for a class loader, or {@code null} if the class loader is not associated with any module. If * the class loader is unknown, it is possible to check the parent class loader up the chain, and so on until a module is found. * * @param cl the class loader * @param search {@code true} to search up the delegation chain * @return the associated module */ public static Module forClassLoader(ClassLoader cl, boolean search) { if (cl instanceof ModuleClassLoader) { return ((ModuleClassLoader) cl).getModule(); } else if (search) { return forClassLoader(cl.getParent(), true); } else { return null; } }
/** * Get the module for a class loader, or {@code null} if the class loader is not associated with any module. If * the class loader is unknown, it is possible to check the parent class loader up the chain, and so on until a module is found. * * @param cl the class loader * @param search {@code true} to search up the delegation chain * @return the associated module */ public static Module forClassLoader(ClassLoader cl, boolean search) { if (cl instanceof ModuleClassLoader) { return ((ModuleClassLoader) cl).getModule(); } else if (search && cl != null) { return forClassLoader(cl.getParent(), true); } else { return null; } }
@Override public boolean isClassReplaceable(final String className, final ClassLoader loader) { if (loader instanceof ModuleClassLoader) { if (((ModuleClassLoader) loader).getModule().getIdentifier().toString().startsWith("deployment.")) { return true; } } return false; } }
public static String getCurrentModuleId() { ClassLoader tccl; if (System.getSecurityManager() != null) { tccl = AccessController.doPrivileged(new PrivilegedAction<ClassLoader>() { public ClassLoader run() { return Thread.currentThread().getContextClassLoader(); } }); } else { tccl = Thread.currentThread().getContextClassLoader(); } if (tccl != null && tccl instanceof ModuleClassLoader) { Module m = ((ModuleClassLoader) tccl).getModule(); if (m != null) { return m.getIdentifier().getName(); } return STSClientConfig.NO_MODULE; } else { return STSClientConfig.NO_MODULE; } }
private ClassLoader _getClassLoader(Class<?> proxiedBeanType) { if (proxiedBeanType.getName().startsWith("java")) { return module.getClassLoader(); } else if(proxiedBeanType.getClassLoader() instanceof ModuleClassLoader) { final ModuleClassLoader loader = (ModuleClassLoader)proxiedBeanType.getClassLoader(); //even though this is not strictly spec compliant if a class from the app server is //being proxied we use the deployment CL to prevent a memory leak //in theory this means that package private methods will not work correctly //however the application does not have access to package private methods anyway //as it is in a different class loader if(loader.getModule().getModuleLoader() instanceof ServiceModuleLoader) { //this is a dynamic module //we can use it to load the proxy return proxiedBeanType.getClassLoader(); } else { //otherwise we use the deployments CL //rather than using a server modules CL return module.getClassLoader(); } } else { return proxiedBeanType.getClassLoader(); } }
contextModule = ((ModuleClassLoader) applicationClassLoader).getModule(); contextModule = moduleClassLoader.getModule(); ClassLoader tccl = SecurityActions.getContextClassLoader(); if (tccl == thiscl) { contextModule = ((ModuleClassLoader) thiscl).getModule(); ClassLoader tccl = SecurityActions.getContextClassLoader(); if (tccl instanceof ModuleClassLoader) { Module tcm = ((ModuleClassLoader) tccl).getModule(); if (tcm.getIdentifier().getName().startsWith("deployment.")) { contextModule = tcm; contextModule = ((ModuleClassLoader) callingClass.getClassLoader()).getModule();
contextModule = ((ModuleClassLoader) applicationClassLoader).getModule(); contextModule = moduleClassLoader.getModule(); ClassLoader tccl = SecurityActions.getContextClassLoader(); if (tccl == thiscl) { contextModule = ((ModuleClassLoader) thiscl).getModule(); ClassLoader tccl = SecurityActions.getContextClassLoader(); if (tccl instanceof ModuleClassLoader) { Module tcm = ((ModuleClassLoader) tccl).getModule(); if (tcm.getIdentifier().getName().startsWith("deployment.")) { contextModule = tcm; contextModule = ((ModuleClassLoader) callingClass.getClassLoader()).getModule();
WildFlyClassResolver(ClassLoader classLoader) { IllegalArgumentAssertion.assertNotNull(classLoader, "classLoader"); IllegalArgumentAssertion.assertTrue(classLoader instanceof ModuleClassLoader, "ModuleClassLoader required: " + classLoader); Module module = ((ModuleClassLoader) classLoader).getModule(); this.classLoader = module.getClassLoader(); this.moduleId = module.getIdentifier(); }
public void activate(ServiceActivatorContext serviceActivatorContext) throws ServiceRegistryException { ServiceTarget serviceTarget = serviceActivatorContext.getServiceTarget(); ModuleClassLoader moduleClassLoader = (ModuleClassLoader) getClass().getClassLoader(); ModuleIdentifier moduleIdentifier = moduleClassLoader.getModule().getIdentifier(); String moduleName = moduleIdentifier.getName(); String moduleSlot = moduleIdentifier.getSlot(); ServiceName serviceIdentifier; if (VersionProvider.VERSION.compareTo(Version.AS_7_1) >= 0) { serviceIdentifier = ServiceName.of("jboss", "ra", "hornetq-ra"); } else { serviceIdentifier = ServiceName.of("hornetq-ra"); } JcaResourceAdapterService service = new JcaResourceAdapterService(); ServiceName serviceName = ServiceName.JBOSS.append(moduleName, moduleSlot, "ResourceAdapter"); serviceTarget.addService(serviceName, service) .addDependency(serviceIdentifier, ResourceAdapter.class, service.getResourceAdapterValue()) .setInitialMode(ServiceController.Mode.ACTIVE) .install(); }
WildFlyClassResolver(ClassLoader classLoader) { IllegalArgumentAssertion.assertNotNull(classLoader, "classLoader"); IllegalArgumentAssertion.assertTrue(classLoader instanceof ModuleClassLoader, "ModuleClassLoader required: " + classLoader); Module module = ((ModuleClassLoader) classLoader).getModule(); this.classLoader = module.getClassLoader(); this.moduleId = module.getIdentifier(); }
@SuppressWarnings("unchecked") protected void deployServletProcessApplication(ServletProcessApplication processApplication) { ClassLoader contextClassloader = ClassLoaderUtil.getContextClassloader(); String moduleName = ((ModuleClassLoader)contextClassloader).getModule().getIdentifier().toString(); ServiceName serviceName = ServiceNames.forNoViewProcessApplicationStartService(moduleName); ServiceName paModuleService = ServiceNames.forProcessApplicationModuleService(moduleName); if(serviceContainer.getService(serviceName) == null) { ServiceController<ServiceTarget> requiredService = (ServiceController<ServiceTarget>) serviceContainer.getRequiredService(paModuleService); NoViewProcessApplicationStartService service = new NoViewProcessApplicationStartService(processApplication.getReference()); requiredService.getValue() .addService(serviceName, service) .setInitialMode(Mode.ACTIVE) .install(); } }
@SuppressWarnings("unchecked") protected void deployServletProcessApplication(ServletProcessApplication processApplication) { ClassLoader contextClassloader = ClassLoaderUtil.getContextClassloader(); String moduleName = ((ModuleClassLoader)contextClassloader).getModule().getIdentifier().toString(); ServiceName serviceName = ServiceNames.forNoViewProcessApplicationStartService(moduleName); ServiceName paModuleService = ServiceNames.forProcessApplicationModuleService(moduleName); if(serviceContainer.getService(serviceName) == null) { ServiceController<ServiceTarget> requiredService = (ServiceController<ServiceTarget>) serviceContainer.getRequiredService(paModuleService); NoViewProcessApplicationStartService service = new NoViewProcessApplicationStartService(processApplication.getReference()); requiredService.getValue() .addService(serviceName, service) .setInitialMode(Mode.ACTIVE) .install(); } }
final ServiceName moduleServiceName = ServiceModuleLoader.moduleServiceName(classLoader.getModule().getIdentifier()); container.addListener(new AbstractServiceListener<Object>() { @Override
Module coreFrameworkModule = ((ModuleClassLoader) FrameworkBuilder.class.getClassLoader()).getModule(); Module.registerURLStreamHandlerFactoryModule(coreFrameworkModule); Module.registerContentHandlerFactoryModule(coreFrameworkModule);