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

changeset 105
250c5cbb8276
parent 99
a369fb1b3aa2
child 134
f47e82cd6077
equal deleted inserted replaced
104:8be80ea4f52b 105:250c5cbb8276
2 2
3 import de.uapcore.lightpit.entities.Issue; 3 import de.uapcore.lightpit.entities.Issue;
4 import de.uapcore.lightpit.entities.IssueSummary; 4 import de.uapcore.lightpit.entities.IssueSummary;
5 import de.uapcore.lightpit.entities.Version; 5 import de.uapcore.lightpit.entities.Version;
6 6
7 import java.util.ArrayList;
8 import java.util.Collection;
9 import java.util.Collections;
10 import java.util.List; 7 import java.util.List;
11 8
12 public class ProjectDetails { 9 public class ProjectDetails {
13 10
14 private List<VersionInfo> versionInfos = Collections.emptyList(); 11 private VersionInfo versionInfo = null;
15 12
16 private List<Issue> issues = Collections.emptyList(); 13 private List<Issue> issues;
17 private List<Issue> issuesWithoutVersion; 14 private IssueSummary issueSummary;
18 private IssueSummary issuesWithoutVersionTotal; 15
16 public void updateDetails(List<Issue> issues, Version version) {
17 this.issues = issues;
18 issueSummary = new IssueSummary();
19 issues.forEach(issueSummary::add);
20 if (version != null) {
21 versionInfo = new VersionInfo(version);
22 versionInfo.collectIssues(issues);
23 }
24 }
19 25
20 public List<Issue> getIssues() { 26 public List<Issue> getIssues() {
21 return issues; 27 return issues;
22 } 28 }
23 29
24 public void setIssues(List<Issue> issues) { 30 public IssueSummary getIssueSummary() {
25 this.issues = issues; 31 return issueSummary;
26 issuesWithoutVersion = new ArrayList<>();
27 issuesWithoutVersionTotal = new IssueSummary();
28 for (Issue issue : issues) {
29 // we want to list all issues that do not have a target version
30 if (issue.getResolvedVersions().isEmpty()) {
31 issuesWithoutVersion.add(issue);
32 issuesWithoutVersionTotal.add(issue);
33 }
34 }
35 } 32 }
36 33
37 public void updateVersionInfo(Collection<Version> versions) { 34 public VersionInfo getVersionInfo() {
38 versionInfos = new ArrayList<>(); 35 return versionInfo;
39 for (Version version : versions) {
40 final var info = new VersionInfo(version);
41 info.collectIssues(issues);
42 versionInfos.add(info);
43 }
44 }
45
46 public List<Issue> getIssuesWithoutVersion() {
47 return issuesWithoutVersion;
48 }
49
50 public IssueSummary getIssuesWithoutVersionTotal() {
51 return issuesWithoutVersionTotal;
52 }
53
54 public List<VersionInfo> getVersionInfos() {
55 return versionInfos;
56 } 36 }
57 } 37 }

mercurial