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

Sun, 21 Jun 2020 11:38:16 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 21 Jun 2020 11:38:16 +0200
changeset 88
1438e5a22c55
parent 86
0a658e53177c
child 99
a369fb1b3aa2
permissions
-rw-r--r--

simplifies version overviews by removing "scheduled issues"

universe@86 1 package de.uapcore.lightpit.viewmodel;
universe@86 2
universe@86 3 import de.uapcore.lightpit.entities.Issue;
universe@86 4 import de.uapcore.lightpit.entities.IssueSummary;
universe@86 5 import de.uapcore.lightpit.entities.Project;
universe@86 6 import de.uapcore.lightpit.entities.Version;
universe@86 7
universe@86 8 import java.util.ArrayList;
universe@86 9 import java.util.Collections;
universe@86 10 import java.util.List;
universe@86 11
universe@86 12 public class ProjectView {
universe@86 13
universe@86 14 private final Project project;
universe@86 15 private List<Version> versions = Collections.emptyList();
universe@86 16 private List<Issue> issues = Collections.emptyList();
universe@86 17
universe@86 18 private IssueSummary issuesTotal;
universe@86 19 private List<Issue> issuesWithoutVersion;
universe@86 20 private IssueSummary issuesWithoutVersionTotal;
universe@86 21 private List<VersionInfo> versionInfos = Collections.emptyList();
universe@86 22
universe@86 23 public ProjectView(Project project) {
universe@86 24 this.project = project;
universe@86 25 }
universe@86 26
universe@86 27 public Project getProject() {
universe@86 28 return project;
universe@86 29 }
universe@86 30
universe@86 31 public List<Issue> getIssues() {
universe@86 32 return issues;
universe@86 33 }
universe@86 34
universe@86 35 public void setIssues(List<Issue> issues) {
universe@86 36 this.issues = issues;
universe@86 37 issuesTotal = new IssueSummary();
universe@86 38 issuesWithoutVersion = new ArrayList<>();
universe@86 39 issuesWithoutVersionTotal = new IssueSummary();
universe@86 40 for (Issue issue : issues) {
universe@86 41 issuesTotal.add(issue);
universe@88 42 // we want to list all issues that do not have a target version
universe@88 43 if (issue.getResolvedVersions().isEmpty()) {
universe@86 44 issuesWithoutVersion.add(issue);
universe@86 45 issuesWithoutVersionTotal.add(issue);
universe@86 46 }
universe@86 47 }
universe@86 48 }
universe@86 49
universe@86 50 public List<Version> getVersions() {
universe@86 51 return versions;
universe@86 52 }
universe@86 53
universe@86 54 public void setVersions(List<Version> versions) {
universe@86 55 this.versions = versions;
universe@86 56 }
universe@86 57
universe@86 58 public void updateVersionInfo() {
universe@86 59 versionInfos = new ArrayList<>();
universe@86 60 for (Version version : versions) {
universe@86 61 final var info = new VersionInfo(version);
universe@86 62 info.collectIssues(issues);
universe@86 63 versionInfos.add(info);
universe@86 64 }
universe@86 65 }
universe@86 66
universe@86 67 public IssueSummary getIssuesTotal() {
universe@86 68 return issuesTotal;
universe@86 69 }
universe@86 70
universe@86 71 public List<Issue> getIssuesWithoutVersion() {
universe@86 72 return issuesWithoutVersion;
universe@86 73 }
universe@86 74
universe@86 75 public IssueSummary getIssuesWithoutVersionTotal() {
universe@86 76 return issuesWithoutVersionTotal;
universe@86 77 }
universe@86 78
universe@86 79 public List<VersionInfo> getVersionInfos() {
universe@86 80 return versionInfos;
universe@86 81 }
universe@86 82 }

mercurial