src/main/java/de/uapcore/lightpit/viewmodel/VersionInfo.java

changeset 86
0a658e53177c
child 88
1438e5a22c55
equal deleted inserted replaced
85:3d16ad54b3dc 86:0a658e53177c
1 package de.uapcore.lightpit.viewmodel;
2
3 import de.uapcore.lightpit.entities.Issue;
4 import de.uapcore.lightpit.entities.IssueSummary;
5 import de.uapcore.lightpit.entities.Version;
6
7 import java.util.ArrayList;
8 import java.util.List;
9
10 public class VersionInfo {
11
12 private final Version version;
13
14 private final IssueSummary reportedTotal = new IssueSummary();
15 private final IssueSummary scheduledTotal = new IssueSummary();
16 private final IssueSummary resolvedTotal = new IssueSummary();
17
18 private final List<Issue> reported = new ArrayList<>();
19 private final List<Issue> scheduled = new ArrayList<>();
20 private final List<Issue> resolved = new ArrayList<>();
21
22 public VersionInfo(Version version) {
23 this.version = version;
24 }
25
26 public Version getVersion() {
27 return version;
28 }
29
30 public void addReported(Issue issue) {
31 reportedTotal.add(issue);
32 reported.add(issue);
33 }
34
35 public void addScheduled(Issue issue) {
36 scheduledTotal.add(issue);
37 scheduled.add(issue);
38 }
39
40 public void addResolved(Issue issue) {
41 resolvedTotal.add(issue);
42 resolved.add(issue);
43 }
44
45 public IssueSummary getReportedTotal() {
46 return reportedTotal;
47 }
48
49 public IssueSummary getScheduledTotal() {
50 return scheduledTotal;
51 }
52
53 public IssueSummary getResolvedTotal() {
54 return resolvedTotal;
55 }
56
57 public List<Issue> getReported() {
58 return reported;
59 }
60
61 public List<Issue> getScheduled() {
62 return scheduled;
63 }
64
65 public List<Issue> getResolved() {
66 return resolved;
67 }
68
69 public void collectIssues(List<Issue> issues) {
70 for (Issue issue : issues) {
71 if (issue.getAffectedVersions().contains(version)) {
72 addReported(issue);
73 }
74 if (issue.getScheduledVersions().contains(version)) {
75 addScheduled(issue);
76 }
77 if (issue.getResolvedVersions().contains(version)) {
78 addResolved(issue);
79 }
80 }
81 }
82 }

mercurial