Class ServiceModuleLoader
- java.lang.Object
-
- org.jboss.modules.ModuleLoader
-
- org.jboss.as.server.moduleservice.ServiceModuleLoader
-
- All Implemented Interfaces:
org.jboss.msc.Service,org.jboss.msc.service.Service<ServiceModuleLoader>,org.jboss.msc.value.Value<ServiceModuleLoader>
public class ServiceModuleLoader extends org.jboss.modules.ModuleLoader implements org.jboss.msc.service.Service<ServiceModuleLoader>
ModuleLoaderthat loads module definitions from msc services. Module specs are looked up in msc services that correspond to the module names.Modules are automatically removed when the corresponding service comes down.
- Author:
- Stuart Douglas, Richard Opalka
-
-
Field Summary
Fields Modifier and Type Field Description static StringMODULE_PREFIXstatic org.jboss.msc.service.ServiceNameMODULE_RESOLVED_SERVICE_PREFIXstatic org.jboss.msc.service.ServiceNameMODULE_SERVICE_PREFIXstatic org.jboss.msc.service.ServiceNameMODULE_SPEC_SERVICE_PREFIX
-
Constructor Summary
Constructors Constructor Description ServiceModuleLoader(org.jboss.modules.ModuleLoader mainModuleLoader)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidaddService(org.jboss.msc.service.ServiceTarget serviceTarget, Bootstrap.Configuration configuration)org.jboss.modules.ModuleSpecfindModule(org.jboss.modules.ModuleIdentifier identifier)ServiceModuleLoadergetValue()static voidinstallModuleResolvedService(org.jboss.msc.service.ServiceTarget serviceTarget, org.jboss.modules.ModuleIdentifier identifier)static booleanisDynamicModule(org.jboss.modules.ModuleIdentifier identifier)Returns true if the module identifier is a dynamic module that will be loaded by this module loaderstatic org.jboss.msc.service.ServiceNamemoduleResolvedServiceName(org.jboss.modules.ModuleIdentifier identifier)Returns the corresponding module resolved service name for the given module.static org.jboss.msc.service.ServiceNamemoduleServiceName(org.jboss.modules.ModuleIdentifier identifier)Returns the corresponding ModuleLoadService service name for the given module.static org.jboss.msc.service.ServiceNamemoduleSpecServiceName(org.jboss.modules.ModuleIdentifier identifier)Returns the corresponding ModuleSpec service name for the given module.protected org.jboss.modules.ModulepreloadModule(org.jboss.modules.ModuleIdentifier identifier)voidrelinkModule(org.jboss.modules.Module module)voidstart(org.jboss.msc.service.StartContext context)voidstop(org.jboss.msc.service.StopContext context)StringtoString()-
Methods inherited from class org.jboss.modules.ModuleLoader
findLoadedModuleLocal, findLoadedModuleLocal, findModule, forClass, forClassLoader, getDependencies, getFinders, getModuleDescription, installMBeanServer, iterateModules, iterateModules, loadModule, loadModule, loadModuleLocal, loadModuleLocal, preloadExportedModule, preloadExportedModule, preloadModule, preloadModule, preloadModule, refreshResourceLoaders, relink, setAndRefreshResourceLoaders, setAndRelinkDependencies, unloadModuleLocal, unloadModuleLocal
-
-
-
-
Field Detail
-
MODULE_SPEC_SERVICE_PREFIX
public static final org.jboss.msc.service.ServiceName MODULE_SPEC_SERVICE_PREFIX
-
MODULE_SERVICE_PREFIX
public static final org.jboss.msc.service.ServiceName MODULE_SERVICE_PREFIX
-
MODULE_RESOLVED_SERVICE_PREFIX
public static final org.jboss.msc.service.ServiceName MODULE_RESOLVED_SERVICE_PREFIX
-
MODULE_PREFIX
public static final String MODULE_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
preloadModule
protected org.jboss.modules.Module preloadModule(org.jboss.modules.ModuleIdentifier identifier) throws org.jboss.modules.ModuleLoadException- Overrides:
preloadModulein classorg.jboss.modules.ModuleLoader- Throws:
org.jboss.modules.ModuleLoadException
-
findModule
public org.jboss.modules.ModuleSpec findModule(org.jboss.modules.ModuleIdentifier identifier) throws org.jboss.modules.ModuleLoadException- Overrides:
findModulein classorg.jboss.modules.ModuleLoader- Throws:
org.jboss.modules.ModuleLoadException
-
toString
public String toString()
- Overrides:
toStringin classorg.jboss.modules.ModuleLoader
-
start
public void start(org.jboss.msc.service.StartContext context) throws org.jboss.msc.service.StartException- Specified by:
startin interfaceorg.jboss.msc.Service- Specified by:
startin interfaceorg.jboss.msc.service.Service<ServiceModuleLoader>- Throws:
org.jboss.msc.service.StartException
-
stop
public void stop(org.jboss.msc.service.StopContext context)
- Specified by:
stopin interfaceorg.jboss.msc.Service- Specified by:
stopin interfaceorg.jboss.msc.service.Service<ServiceModuleLoader>
-
getValue
public ServiceModuleLoader getValue() throws IllegalStateException, IllegalArgumentException
- Specified by:
getValuein interfaceorg.jboss.msc.value.Value<ServiceModuleLoader>- Throws:
IllegalStateExceptionIllegalArgumentException
-
relinkModule
public void relinkModule(org.jboss.modules.Module module) throws org.jboss.modules.ModuleLoadException- Throws:
org.jboss.modules.ModuleLoadException
-
addService
public static void addService(org.jboss.msc.service.ServiceTarget serviceTarget, Bootstrap.Configuration configuration)
-
moduleSpecServiceName
public static org.jboss.msc.service.ServiceName moduleSpecServiceName(org.jboss.modules.ModuleIdentifier identifier)
Returns the corresponding ModuleSpec service name for the given module.- Parameters:
identifier- The module identifier- Returns:
- The service name of the ModuleSpec service
-
installModuleResolvedService
public static void installModuleResolvedService(org.jboss.msc.service.ServiceTarget serviceTarget, org.jboss.modules.ModuleIdentifier identifier)
-
moduleResolvedServiceName
public static org.jboss.msc.service.ServiceName moduleResolvedServiceName(org.jboss.modules.ModuleIdentifier identifier)
Returns the corresponding module resolved service name for the given module. The module resolved service is basically a latch that prevents the module from being loaded until all the transitive dependencies that it depends upon have have their module spec services come up.- Parameters:
identifier- The module identifier- Returns:
- The service name of the ModuleSpec service
-
isDynamicModule
public static boolean isDynamicModule(org.jboss.modules.ModuleIdentifier identifier)
Returns true if the module identifier is a dynamic module that will be loaded by this module loader
-
moduleServiceName
public static org.jboss.msc.service.ServiceName moduleServiceName(org.jboss.modules.ModuleIdentifier identifier)
Returns the corresponding ModuleLoadService service name for the given module.- Parameters:
identifier- The module identifier- Returns:
- The service name of the ModuleLoadService service
-
-