Class DefaultModuleDefinition

java.lang.Object
com.sun.enterprise.module.common_impl.DefaultModuleDefinition
All Implemented Interfaces:
ModuleDefinition
Direct Known Subclasses:
CookedModuleDefinition

public class DefaultModuleDefinition extends Object implements ModuleDefinition
ModuleDefinition implementation that picks up most of the module properties from the manifest file of the jar, as baked in by the hk2-maven-plugin.
  • Field Details

    • name

      private final String name
    • version

      private final String version
    • publicPkgs

      private final String[] publicPkgs
    • dependencies

      protected final List<ModuleDependency> dependencies
    • classPath

      protected final List<URI> classPath
    • importPolicy

      private final String importPolicy
    • lifecyclePolicy

      private final String lifecyclePolicy
    • manifest

      private final Manifest manifest
    • mainAttributes

      protected final Attributes mainAttributes
      Main attributes section of the manifest. Always non-null.
    • metadata

      private final ModuleMetadata metadata
      Metadata that works like index.
    • EMPTY_MANIFEST

      private static final Manifest EMPTY_MANIFEST
    • LOGGER

      private static final Logger LOGGER
  • Constructor Details

  • Method Details

    • parseClassPath

      protected void parseClassPath(Attributes attr, URI baseURI) throws IOException
      Parses "Class-Path" from manifest attributes and updates URI list.
      Throws:
      IOException
    • testClassPath

      private boolean testClassPath(URI uri)
      Optional error diagnostics performed during the development time to check if the URL pointed by the path actually exists.
    • decorateClassPath

      protected String decorateClassPath(String classpathElement)
      Extension point to manipulate the classpath element before it's parsed.
      See Also:
    • parseAttributes

      protected void parseAttributes(Attributes attr)
      Extensibility point to parse more information from Manifest attributes.
      Parameters:
      attr - Main attributes of the manifest. Always non-null.
    • getName

      public String getName()
      Returns the name of the module
      Specified by:
      getName in interface ModuleDefinition
      Returns:
      the name
    • getPublicInterfaces

      public String[] getPublicInterfaces()
      Returns the list of classes and packages that have been designated as public interfaces of this module.
      Specified by:
      getPublicInterfaces in interface ModuleDefinition
      Returns:
      the list of public packages or classes
    • getDependencies

      public ModuleDependency[] getDependencies()
      Returns the list of module dependencies
      Specified by:
      getDependencies in interface ModuleDefinition
      Returns:
      the ModuleDependency
    • getLocations

      public URI[] getLocations()
      Returns the list of URI locations forming the classpath for this module.
      Specified by:
      getLocations in interface ModuleDefinition
      Returns:
      the list of URI locations for this module
    • getVersion

      public String getVersion()
      Returns the module's version
      Specified by:
      getVersion in interface ModuleDefinition
      Returns:
      the module's version
    • getImportPolicyClassName

      public String getImportPolicyClassName()
      Returns the class name implementing the ImportPolicy interface for this module or null if there is no such implementation
      Specified by:
      getImportPolicyClassName in interface ModuleDefinition
      Returns:
      the ImportPolicy implementation class name
    • getLifecyclePolicyClassName

      public String getLifecyclePolicyClassName()
      Returns the class name implementing the LifecyclePolicy interface for this module or null if there is no such implementation
      Specified by:
      getLifecyclePolicyClassName in interface ModuleDefinition
      Returns:
      the LifecyclePolicy implementation class name
    • getManifest

      public Manifest getManifest()
      Returns the manifest file from the module's implementation jar file
      Specified by:
      getManifest in interface ModuleDefinition
      Returns:
      never null.
    • getMetadata

      public ModuleMetadata getMetadata()
      Description copied from interface: ModuleDefinition
      Gets the metadata that describes various components and services in this module.
      Specified by:
      getMetadata in interface ModuleDefinition
      Returns:
      Always non-null.
    • toString

      public String toString()
      Assists debugging.
      Overrides:
      toString in class Object