1 package de.uapcore.lightpit.viewmodel; |
|
2 |
|
3 import de.uapcore.lightpit.entities.Component; |
|
4 import de.uapcore.lightpit.entities.Project; |
|
5 import de.uapcore.lightpit.entities.User; |
|
6 import de.uapcore.lightpit.entities.Version; |
|
7 import de.uapcore.lightpit.types.IssueCategory; |
|
8 import de.uapcore.lightpit.types.IssueStatus; |
|
9 import de.uapcore.lightpit.types.VersionStatus; |
|
10 |
|
11 import java.util.*; |
|
12 |
|
13 public class IssueEditView extends IssueDetailView { |
|
14 private List<Project> projects = Collections.emptyList(); |
|
15 private Set<Version> versionsUpcoming = new HashSet<>(); |
|
16 private Set<Version> versionsRecent = new HashSet<>(); |
|
17 private List<User> users; |
|
18 private List<Component> components; |
|
19 |
|
20 public List<Project> getProjects() { |
|
21 return projects; |
|
22 } |
|
23 |
|
24 public void setProjects(List<Project> projects) { |
|
25 this.projects = projects; |
|
26 } |
|
27 |
|
28 public Collection<Version> getVersionsUpcoming() { |
|
29 return versionsUpcoming; |
|
30 } |
|
31 |
|
32 public Collection<Version> getVersionsRecent() { |
|
33 return versionsRecent; |
|
34 } |
|
35 |
|
36 public void configureVersionSelectors(List<Version> versions) { |
|
37 versionsRecent.clear(); |
|
38 versionsUpcoming.clear(); |
|
39 // keep the current selection, if any |
|
40 versionsRecent.addAll(getIssue().getAffectedVersions()); |
|
41 versionsUpcoming.addAll(getIssue().getResolvedVersions()); |
|
42 for (var v : versions) { |
|
43 if (v.getStatus().isReleased()) { |
|
44 if (!v.getStatus().equals(VersionStatus.Deprecated)) |
|
45 versionsRecent.add(v); |
|
46 } else { |
|
47 versionsUpcoming.add(v); |
|
48 } |
|
49 } |
|
50 } |
|
51 |
|
52 public List<User> getUsers() { |
|
53 return users; |
|
54 } |
|
55 |
|
56 public void setUsers(List<User> users) { |
|
57 this.users = users; |
|
58 } |
|
59 |
|
60 public List<Component> getComponents() { |
|
61 return components; |
|
62 } |
|
63 |
|
64 public void setComponents(List<Component> components) { |
|
65 this.components = components; |
|
66 } |
|
67 |
|
68 public IssueStatus[] getIssueStatus() { |
|
69 return IssueStatus.values(); |
|
70 } |
|
71 |
|
72 public IssueCategory[] getIssueCategory() { |
|
73 return IssueCategory.values(); |
|
74 } |
|
75 } |
|