Class DefaultModuleDefinition
- java.lang.Object
-
- com.sun.enterprise.module.common_impl.DefaultModuleDefinition
-
- All Implemented Interfaces:
ModuleDefinition
- Direct Known Subclasses:
CookedModuleDefinition
public class DefaultModuleDefinition extends java.lang.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 Summary
Fields Modifier and Type Field Description protected java.util.List<java.net.URI>
classPath
protected java.util.List<ModuleDependency>
dependencies
private static java.util.jar.Manifest
EMPTY_MANIFEST
private java.lang.String
importPolicy
private java.lang.String
lifecyclePolicy
private static java.util.logging.Logger
LOGGER
protected java.util.jar.Attributes
mainAttributes
Main attributes section of the manifest.private java.util.jar.Manifest
manifest
private ModuleMetadata
metadata
Metadata that works like index.private java.lang.String
name
private java.lang.String[]
publicPkgs
private java.lang.String
version
-
Constructor Summary
Constructors Constructor Description DefaultModuleDefinition(java.io.File location)
TO DO need to support a URI constructorDefaultModuleDefinition(java.io.File location, java.util.jar.Attributes attr)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
decorateClassPath(java.lang.String classpathElement)
Extension point to manipulate the classpath element before it's parsed.ModuleDependency[]
getDependencies()
Returns the list of module dependenciesjava.lang.String
getImportPolicyClassName()
Returns the class name implementing theImportPolicy
interface for this module or null if there is no such implementationjava.lang.String
getLifecyclePolicyClassName()
Returns the class name implementing theLifecyclePolicy
interface for this module or null if there is no such implementationjava.net.URI[]
getLocations()
Returns the list of URI locations forming the classpath for this module.java.util.jar.Manifest
getManifest()
Returns the manifest file from the module's implementation jar fileModuleMetadata
getMetadata()
Gets the metadata that describes various components and services in this module.java.lang.String
getName()
Returns the name of the modulejava.lang.String[]
getPublicInterfaces()
Returns the list of classes and packages that have been designated as public interfaces of this module.java.lang.String
getVersion()
Returns the module's versionprotected void
parseAttributes(java.util.jar.Attributes attr)
Extensibility point to parse more information from Manifest attributes.protected void
parseClassPath(java.util.jar.Attributes attr, java.net.URI baseURI)
Parses "Class-Path" from manifest attributes and updates URI list.private boolean
testClassPath(java.net.URI uri)
Optional error diagnostics performed during the development time to check if the URL pointed by the path actually exists.java.lang.String
toString()
Assists debugging.
-
-
-
Field Detail
-
name
private final java.lang.String name
-
version
private final java.lang.String version
-
publicPkgs
private final java.lang.String[] publicPkgs
-
dependencies
protected final java.util.List<ModuleDependency> dependencies
-
classPath
protected final java.util.List<java.net.URI> classPath
-
importPolicy
private final java.lang.String importPolicy
-
lifecyclePolicy
private final java.lang.String lifecyclePolicy
-
manifest
private final java.util.jar.Manifest manifest
-
mainAttributes
protected final java.util.jar.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 java.util.jar.Manifest EMPTY_MANIFEST
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
-
Constructor Detail
-
DefaultModuleDefinition
public DefaultModuleDefinition(java.io.File location) throws java.io.IOException
TO DO need to support a URI constructor- Throws:
java.io.IOException
-
DefaultModuleDefinition
public DefaultModuleDefinition(java.io.File location, java.util.jar.Attributes attr) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
parseClassPath
protected void parseClassPath(java.util.jar.Attributes attr, java.net.URI baseURI) throws java.io.IOException
Parses "Class-Path" from manifest attributes and updates URI list.- Throws:
java.io.IOException
-
testClassPath
private boolean testClassPath(java.net.URI uri)
Optional error diagnostics performed during the development time to check if the URL pointed by the path actually exists.
-
decorateClassPath
protected java.lang.String decorateClassPath(java.lang.String classpathElement)
Extension point to manipulate the classpath element before it's parsed.- See Also:
parseClassPath(Attributes,URI)
-
parseAttributes
protected void parseAttributes(java.util.jar.Attributes attr)
Extensibility point to parse more information from Manifest attributes.- Parameters:
attr
- Main attributes of the manifest. Always non-null.
-
getName
public java.lang.String getName()
Returns the name of the module- Specified by:
getName
in interfaceModuleDefinition
- Returns:
- the name
-
getPublicInterfaces
public java.lang.String[] getPublicInterfaces()
Returns the list of classes and packages that have been designated as public interfaces of this module.- Specified by:
getPublicInterfaces
in interfaceModuleDefinition
- Returns:
- the list of public packages or classes
-
getDependencies
public ModuleDependency[] getDependencies()
Returns the list of module dependencies- Specified by:
getDependencies
in interfaceModuleDefinition
- Returns:
- the ModuleDependency
-
getLocations
public java.net.URI[] getLocations()
Returns the list of URI locations forming the classpath for this module.- Specified by:
getLocations
in interfaceModuleDefinition
- Returns:
- the list of URI locations for this module
-
getVersion
public java.lang.String getVersion()
Returns the module's version- Specified by:
getVersion
in interfaceModuleDefinition
- Returns:
- the module's version
-
getImportPolicyClassName
public java.lang.String getImportPolicyClassName()
Returns the class name implementing theImportPolicy
interface for this module or null if there is no such implementation- Specified by:
getImportPolicyClassName
in interfaceModuleDefinition
- Returns:
- the
ImportPolicy
implementation class name
-
getLifecyclePolicyClassName
public java.lang.String getLifecyclePolicyClassName()
Returns the class name implementing theLifecyclePolicy
interface for this module or null if there is no such implementation- Specified by:
getLifecyclePolicyClassName
in interfaceModuleDefinition
- Returns:
- the
LifecyclePolicy
implementation class name
-
getManifest
public java.util.jar.Manifest getManifest()
Returns the manifest file from the module's implementation jar file- Specified by:
getManifest
in interfaceModuleDefinition
- 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 interfaceModuleDefinition
- Returns:
- Always non-null.
-
toString
public java.lang.String toString()
Assists debugging.- Overrides:
toString
in classjava.lang.Object
-
-