Interface ExternalModule

All Known Implementing Classes:
ExternalModuleService

public interface ExternalModule
Allows callers to add external modules that can be used as dependencies for a DeploymentUnit.

A module is considered external when it resides outside ot the default "modules" directory from which JBoss Modules looks to find modules. Adding an external module consists of creating a Module Identifier string and ExternalModuleSpecService that manages the life cycle of the module specification that defines the module. To be created it is necessary to specify a path to its location. That path could be a jar file or a directory, in which case the directory will be scanned searching for jar files in it.

Author:
Yeray Borges
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Prefix name used for the new installed module identifier.
  • Method Summary

    Modifier and Type
    Method
    Description
    addExternalModuleAsString(String moduleName, String path, org.jboss.msc.service.ServiceRegistry serviceRegistry, org.jboss.msc.service.ServiceTarget serviceTarget)
    Prepares and install a new Module Identifier string and ExternalModuleSpecService to manage this module.
    addExternalModuleAsString(String path, org.jboss.msc.service.ServiceRegistry serviceRegistry, org.jboss.msc.service.ServiceTarget serviceTarget)
    Prepares and install a new module and ExternalModuleSpecService to manage this module.
    boolean
    Checks if the path argument refers to a file and the file is valid to be used as a class-path entry.
  • Field Details

    • EXTERNAL_MODULE_PREFIX

      static final String EXTERNAL_MODULE_PREFIX
      Prefix name used for the new installed module identifier.
      See Also:
  • Method Details

    • addExternalModuleAsString

      String addExternalModuleAsString(String moduleName, String path, org.jboss.msc.service.ServiceRegistry serviceRegistry, org.jboss.msc.service.ServiceTarget serviceTarget)
      Prepares and install a new Module Identifier string and ExternalModuleSpecService to manage this module. This method prevents the creation of duplicate external module spec services for the given module name looking at the service registry, so it can be called multiple times for the same module name.
      Parameters:
      moduleName - The module name to add.
      path - An absolute path pointing out to a directory or jar file that will be used as source for the resources backed by the given module name we want to install. Cannot be null
      serviceRegistry - The MSC service registry which will be used to find if there is already an ExternalModuleSpecService created for the given module name. Cannot be null.
      serviceTarget - The ServiceTarget to use to install the service. Cannot be null.
      Returns:
      The Module Identifier as a String of the module created for the given path.
    • addExternalModuleAsString

      String addExternalModuleAsString(String path, org.jboss.msc.service.ServiceRegistry serviceRegistry, org.jboss.msc.service.ServiceTarget serviceTarget)
      Prepares and install a new module and ExternalModuleSpecService to manage this module.

      This method does not use a specific module name, instead the module name is derived from the given path. This method prevents the creation of duplicate external module spec services for the given path looking at the service registry, so it can be called multiple times using the same path.

      Parameters:
      path - An absolute path pointing out to a directory or jar file that will be used as source for the resources backed by the given module name we want to install. Cannot be null
      serviceRegistry - The MSC service registry which will be used to find if there is already an ExternalModuleSpecService created for the given path. Cannot be null.
      serviceTarget - The ServiceTarget to use to install the service. Cannot be null.
      Returns:
      The string representing the Module Identifier created for the given path.
    • isValidFile

      boolean isValidFile(String path)
      Checks if the path argument refers to a file and the file is valid to be used as a class-path entry.
      Parameters:
      path - value to test.
      Returns:
      true if and only if the path refers to a file and the file is considered valid as a class-path entry, otherwise returns false.