1 package it.serendigity.maven.plugin.lifecycle.helper.vo;
2
3 import java.util.ArrayList;
4 import java.util.Collections;
5 import java.util.List;
6
7 public class MavenExecutionPlanInfo {
8
9 private List<MavenExecutionInfo> mavenExecutionsInfo;
10 private MavenExecutionSummary summary;
11 private boolean calculateSummary;
12
13
14 public MavenExecutionPlanInfo(boolean calculateSummary) {
15 this.calculateSummary = calculateSummary;
16
17 }
18
19 public List<MavenExecutionInfo> getMavenExecutionsInfo() {
20 return mavenExecutionsInfo;
21 }
22
23 public void addMavenExecutionInfo(MavenExecutionInfo executionInfo) {
24 if (mavenExecutionsInfo == null) {
25 mavenExecutionsInfo = new ArrayList<>();
26
27 }
28
29 mavenExecutionsInfo.add(executionInfo);
30
31 if (calculateSummary) {
32 if (summary == null) {
33 summary = new MavenExecutionSummary();
34 }
35
36 summary.updateSummary(executionInfo);
37
38 }
39
40 }
41
42 public MavenExecutionSummary getSummary() {
43 return summary;
44 }
45
46 public void setSummary(MavenExecutionSummary summary) {
47 this.summary = summary;
48 }
49
50
51
52 public void sort(MavenExecutionAttribute orderByAttribute) {
53
54 if (orderByAttribute != null && getMavenExecutionsInfo() != null) {
55 Collections.sort(getMavenExecutionsInfo(), new MavenExecutionComparator(orderByAttribute));
56 }
57
58 }
59
60 }