|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.maven.classrealm.DefaultClassRealmManager
@Component(role=ClassRealmManager.class) public class DefaultClassRealmManager
Manages the class realms used by Maven. Warning: This is an internal utility class that is only public for technical reasons, it is not part of the public API. In particular, this class can be changed or deleted without prior notice.
Field Summary | |
---|---|
protected PlexusContainer |
container
|
Constructor Summary | |
---|---|
DefaultClassRealmManager()
|
Method Summary | |
---|---|
ClassRealm |
createExtensionRealm(Plugin plugin,
List<org.eclipse.aether.artifact.Artifact> artifacts)
Creates a new class realm for the specified build extension. |
ClassRealm |
createPluginRealm(Plugin plugin,
ClassLoader parent,
List<String> parentImports,
Map<String,ClassLoader> foreignImports,
List<org.eclipse.aether.artifact.Artifact> artifacts)
Creates a new class realm for the specified plugin. |
ClassRealm |
createProjectRealm(Model model,
List<org.eclipse.aether.artifact.Artifact> artifacts)
Creates a new class realm for the specified project and its build extensions. |
ClassRealm |
getCoreRealm()
Gets the class realm hosting the Maven core. |
ClassRealm |
getMavenApiRealm()
Gets the class realm exposing the Maven API. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
@Requirement protected PlexusContainer container
Constructor Detail |
---|
public DefaultClassRealmManager()
Method Detail |
---|
public ClassRealm getMavenApiRealm()
ClassRealmManager
getMavenApiRealm
in interface ClassRealmManager
null
.public ClassRealm getCoreRealm()
ClassRealmManager
getCoreRealm
in interface ClassRealmManager
null
.public ClassRealm createProjectRealm(Model model, List<org.eclipse.aether.artifact.Artifact> artifacts)
ClassRealmManager
createProjectRealm
in interface ClassRealmManager
model
- The model of the project for which to create a realm, must not be null
.artifacts
- The artifacts to add to the class realm, may be null
. Unresolved artifacts (i.e. with a
missing file) will automatically be excluded from the realm.
null
.public ClassRealm createExtensionRealm(Plugin plugin, List<org.eclipse.aether.artifact.Artifact> artifacts)
ClassRealmManager
createExtensionRealm
in interface ClassRealmManager
plugin
- The extension plugin for which to create a realm, must not be null
.artifacts
- The artifacts to add to the class realm, may be null
. Unresolved artifacts (i.e. with a
missing file) will automatically be excluded from the realm.
null
.public ClassRealm createPluginRealm(Plugin plugin, ClassLoader parent, List<String> parentImports, Map<String,ClassLoader> foreignImports, List<org.eclipse.aether.artifact.Artifact> artifacts)
ClassRealmManager
createPluginRealm
in interface ClassRealmManager
plugin
- The plugin for which to create a realm, must not be null
.parent
- The parent realm for the new realm, may be null
.parentImports
- The packages/types to import from the parent realm, may be null
.foreignImports
- The packages/types to import from foreign realms, may be null
.artifacts
- The artifacts to add to the class realm, may be null
. Unresolved artifacts (i.e. with a
missing file) will automatically be excluded from the realm.
null
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |