Sat, 17 Oct 2020 19:56:50 +0200
completes feature: project components
1 package de.uapcore.lightpit.viewmodel;
3 import de.uapcore.lightpit.entities.*;
5 import java.util.*;
7 public class IssueEditView extends ProjectView {
8 private Issue issue;
10 private List<Project> projects = Collections.emptyList();
11 private Set<Version> versionsUpcoming = new HashSet<>();
12 private Set<Version> versionsRecent = new HashSet<>();
13 private List<User> users;
14 private List<Component> components;
15 private List<IssueComment> comments;
17 public void setIssue(Issue issue) {
18 this.issue = issue;
19 }
21 public Issue getIssue() {
22 return issue;
23 }
25 public List<Project> getProjects() {
26 return projects;
27 }
29 public void setProjects(List<Project> projects) {
30 this.projects = projects;
31 }
33 public Collection<Version> getVersionsUpcoming() {
34 return versionsUpcoming;
35 }
37 public Collection<Version> getVersionsRecent() {
38 return versionsRecent;
39 }
41 public void configureVersionSelectors(List<Version> versions) {
42 versionsRecent.clear();
43 versionsUpcoming.clear();
44 // keep the current selection, if any
45 versionsRecent.addAll(issue.getAffectedVersions());
46 versionsUpcoming.addAll(issue.getResolvedVersions());
47 for (var v : versions) {
48 if (v.getStatus().isReleased()) {
49 if (!v.getStatus().equals(VersionStatus.Deprecated))
50 versionsRecent.add(v);
51 } else {
52 versionsUpcoming.add(v);
53 }
54 }
55 }
57 public List<User> getUsers() {
58 return users;
59 }
61 public void setUsers(List<User> users) {
62 this.users = users;
63 }
65 public List<Component> getComponents() {
66 return components;
67 }
69 public void setComponents(List<Component> components) {
70 this.components = components;
71 }
73 public IssueStatus[] getIssueStatus() {
74 return IssueStatus.values();
75 }
77 public IssueCategory[] getIssueCategory() {
78 return IssueCategory.values();
79 }
81 public List<IssueComment> getComments() {
82 return comments;
83 }
85 public void setComments(List<IssueComment> comments) {
86 this.comments = comments;
87 }
88 }