Package com.sun.enterprise.module.single
Class ProxyModuleDefinition
java.lang.Object
com.sun.enterprise.module.single.ProxyModuleDefinition
- All Implemented Interfaces:
ModuleDefinition
Creates a ModuleDefinition backed up by a a single classloader.
The implementation does not cache any data - everything is recalculated
for each call. Callers are therefore encouraged to either supply their
own caching, or minimize the calls to methods of this class.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ClassLoader
private final List
<ManifestProxy.SeparatorMappings> -
Constructor Summary
ConstructorsConstructorDescriptionProxyModuleDefinition
(ClassLoader classLoader) ProxyModuleDefinition
(ClassLoader classLoader, List<ManifestProxy.SeparatorMappings> mappings) -
Method Summary
Modifier and TypeMethodDescriptionprotected Manifest
generate
(ModuleMetadata metadata) Returns the list of this module's dependencies.Returns the import policy class name.Returns the lifecycle policy class name.URI[]
A Module is implemented by one to many jar files.Returns the manifest file for the main module jar fileGets the metadata that describes various components and services in this module.getName()
Returns the module name, usually this is the same name as the jar file name containing the module's implementation.String[]
Returns a list of public interfaces for this module.Returns the version of this module's implementationprivate static boolean
private static boolean
private static byte[]
-
Field Details
-
classLoader
-
mappings
-
-
Constructor Details
-
ProxyModuleDefinition
- Throws:
IOException
-
ProxyModuleDefinition
public ProxyModuleDefinition(ClassLoader classLoader, List<ManifestProxy.SeparatorMappings> mappings) throws IOException - Throws:
IOException
-
-
Method Details
-
readFully
- Throws:
IOException
-
getName
Description copied from interface:ModuleDefinition
Returns the module name, usually this is the same name as the jar file name containing the module's implementation.- Specified by:
getName
in interfaceModuleDefinition
- Returns:
- module name
-
getPublicInterfaces
Description copied from interface:ModuleDefinition
Returns a list of public interfaces for this module. Public interface can be packages, interfaces, or classes- Specified by:
getPublicInterfaces
in interfaceModuleDefinition
- Returns:
- a array of public interfaces
-
getDependencies
Description copied from interface:ModuleDefinition
Returns the list of this module's dependencies. Each dependency must be satisfied at run time for this module to function properly.- Specified by:
getDependencies
in interfaceModuleDefinition
- Returns:
- list of dependencies
-
getLocations
Description copied from interface:ModuleDefinition
A Module is implemented by one to many jar files. This method returns the list of jar files implementing the module- Specified by:
getLocations
in interfaceModuleDefinition
- Returns:
- the module's list of implementation jars
-
getVersion
Description copied from interface:ModuleDefinition
Returns the version of this module's implementation- Specified by:
getVersion
in interfaceModuleDefinition
- Returns:
- a version number
-
getImportPolicyClassName
Description copied from interface:ModuleDefinition
Returns the import policy class name. Although the implementation of this policy does not necessary have to implement the ImportPolicy, but could use another interface, it is the responsibility of the associated Repository to invoke that interface when the module is started.- Specified by:
getImportPolicyClassName
in interfaceModuleDefinition
- Returns:
- Fully qualified class name that's assignable to
ImportPolicy
, or null if no import policy exists.
-
getLifecyclePolicyClassName
Description copied from interface:ModuleDefinition
Returns the lifecycle policy class name. Although the implementation of this policy does not necessary have to implement the LifecyclePolicy, but could use another interface, it is the responsibility of the associated Repository to invoke that interface when the module is started.- Specified by:
getLifecyclePolicyClassName
in interfaceModuleDefinition
- Returns:
- Fully qualified class name that's assignable to
LifecyclePolicy
, or null if no import policy exists.
-
getManifest
Description copied from interface:ModuleDefinition
Returns the manifest file for the main module jar file- Specified by:
getManifest
in interfaceModuleDefinition
- Returns:
- the manifest file
-
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.
-
generate
-
ok
-
ok
-