Package org.apache.maven.plugin
Interface PluginRealmCache
- All Known Implementing Classes:
- DefaultPluginRealmCache
public interface PluginRealmCache
Caches plugin class realms. Warning: This is an internal utility interface that is only public for
 technical reasons, it is not part of the public API. In particular, this interface can be changed or deleted without
 prior notice.
- Author:
- Igor Fedorenko, Benjamin Bentmann
- 
Nested Class SummaryNested ClassesModifier and TypeInterfaceDescriptionstatic classCacheRecordstatic interfaceA cache key.static interface
- 
Method SummaryModifier and TypeMethodDescriptioncreateKey(Plugin plugin, ClassLoader parentRealm, Map<String, ClassLoader> foreignImports, org.eclipse.aether.graph.DependencyFilter dependencyFilter, List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session) voidflush()get(PluginRealmCache.Key key) default PluginRealmCache.CacheRecordget(PluginRealmCache.Key key, PluginRealmCache.PluginRealmSupplier supplier) put(PluginRealmCache.Key key, org.codehaus.plexus.classworlds.realm.ClassRealm pluginRealm, List<Artifact> pluginArtifacts) voidregister(MavenProject project, PluginRealmCache.Key key, PluginRealmCache.CacheRecord record) Registers the specified cache record for usage with the given project.
- 
Method Details- 
createKeyPluginRealmCache.Key createKey(Plugin plugin, ClassLoader parentRealm, Map<String, ClassLoader> foreignImports, org.eclipse.aether.graph.DependencyFilter dependencyFilter, List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session) 
- 
get
- 
getdefault PluginRealmCache.CacheRecord get(PluginRealmCache.Key key, PluginRealmCache.PluginRealmSupplier supplier) throws PluginResolutionException, PluginContainerException 
- 
putPluginRealmCache.CacheRecord put(PluginRealmCache.Key key, org.codehaus.plexus.classworlds.realm.ClassRealm pluginRealm, List<Artifact> pluginArtifacts) 
- 
flushvoid flush()
- 
registerRegisters the specified cache record for usage with the given project. Integrators can use the information collected from this method in combination with a custom cache implementation to dispose unused records from the cache.- Parameters:
- project- The project that employs the plugin realm, must not be- null.
- record- The cache record being used for the project, must not be- null.
 
 
-