1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.lifecycle.internal;
20
21 import java.util.ArrayList;
22 import java.util.List;
23
24 import org.apache.maven.lifecycle.internal.builder.BuilderCommon;
25 import org.apache.maven.model.Plugin;
26 import org.apache.maven.plugin.MojoExecution;
27 import org.apache.maven.plugin.descriptor.MojoDescriptor;
28 import org.apache.maven.project.MavenProject;
29
30
31
32
33
34
35
36
37
38 public class ExecutionPlanItem {
39 private final MojoExecution mojoExecution;
40
41 public ExecutionPlanItem(MojoExecution mojoExecution) {
42 this.mojoExecution = mojoExecution;
43 }
44
45 public static List<ExecutionPlanItem> createExecutionPlanItems(
46 MavenProject mavenProject, List<MojoExecution> executions) {
47 BuilderCommon.attachToThread(mavenProject);
48
49 List<ExecutionPlanItem> result = new ArrayList<>();
50 for (MojoExecution mojoExecution : executions) {
51 result.add(new ExecutionPlanItem(mojoExecution));
52 }
53 return result;
54 }
55
56 public MojoExecution getMojoExecution() {
57 return mojoExecution;
58 }
59
60 public String getLifecyclePhase() {
61 return mojoExecution.getLifecyclePhase();
62 }
63
64 public Plugin getPlugin() {
65 final MojoDescriptor mojoDescriptor = getMojoExecution().getMojoDescriptor();
66 return mojoDescriptor.getPluginDescriptor().getPlugin();
67 }
68
69 @Override
70 public String toString() {
71 return "ExecutionPlanItem{" + mojoExecution.toString() + "}@" + Integer.toHexString(hashCode());
72 }
73 }