1 package org.apache.maven.plugin.coreit;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.plugin.AbstractMojo;
23 import org.apache.maven.plugin.MojoExecutionException;
24 import org.apache.maven.project.MavenProject;
25
26 import java.util.List;
27
28
29
30
31
32
33 public class ForkLifecycleAggregatorMojo
34 extends AbstractMojo
35 {
36
37
38
39
40 private MavenProject project;
41
42
43
44
45 private List reactorProjects;
46
47 public void execute()
48 throws MojoExecutionException
49 {
50 for ( Object reactorProject : reactorProjects )
51 {
52 MavenProject executedProject = ( (MavenProject) reactorProject ).getExecutionProject();
53
54 if ( !executedProject.getBuild().getFinalName().equals( TouchMojo.FINAL_NAME ) )
55 {
56 throw new MojoExecutionException(
57 "Unexpected result, final name of executed project " + executedProject + " is "
58 + executedProject.getBuild().getFinalName() + " (should be \'" + TouchMojo.FINAL_NAME
59 + "\')." );
60 }
61 }
62
63 if ( project.getBuild().getFinalName().equals( TouchMojo.FINAL_NAME ) )
64 {
65 throw new MojoExecutionException(
66 "forked project was polluted. (should NOT be \'" + TouchMojo.FINAL_NAME + "\')." );
67 }
68 }
69
70 }