1 package org.apache.maven.plugin;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 import java.util.List;
19
20 import org.apache.maven.execution.MavenSession;
21 import org.apache.maven.model.Plugin;
22 import org.apache.maven.plugin.descriptor.MojoDescriptor;
23 import org.apache.maven.plugin.descriptor.PluginDescriptor;
24 import org.codehaus.plexus.classworlds.realm.ClassRealm;
25 import org.sonatype.aether.RepositorySystemSession;
26 import org.sonatype.aether.repository.RemoteRepository;
27
28
29
30
31 public interface BuildPluginManager
32 {
33
34 PluginDescriptor loadPlugin( Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session )
35 throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
36 InvalidPluginDescriptorException;
37
38
39 MojoDescriptor getMojoDescriptor( Plugin plugin, String goal, List<RemoteRepository> repositories,
40 RepositorySystemSession session )
41 throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
42 MojoNotFoundException, InvalidPluginDescriptorException;
43
44 ClassRealm getPluginRealm( MavenSession session, PluginDescriptor pluginDescriptor )
45 throws PluginResolutionException, PluginManagerException;
46
47 void executeMojo( MavenSession session, MojoExecution execution )
48 throws MojoFailureException, MojoExecutionException, PluginConfigurationException, PluginManagerException;
49
50 }