Tue, 05 Jan 2021 19:19:31 +0100
migrates the utility classes for the AbstractServlet
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
1 | package de.uapcore.lightpit.viewmodel; |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
2 | |
167
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
3 | import de.uapcore.lightpit.entities.Component; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
4 | import de.uapcore.lightpit.entities.Project; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
5 | import de.uapcore.lightpit.entities.User; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
6 | import de.uapcore.lightpit.entities.Version; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
7 | import de.uapcore.lightpit.types.IssueCategory; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
8 | import de.uapcore.lightpit.types.IssueStatus; |
3f30adba1c63
major refactoring of DAO architecture - also fixes #114
Mike Becker <universe@uap-core.de>
parents:
146
diff
changeset
|
9 | import de.uapcore.lightpit.types.VersionStatus; |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
10 | |
95
0552cc5755f3
fix: ... but ofc they should not appear more than once...
Mike Becker <universe@uap-core.de>
parents:
93
diff
changeset
|
11 | import java.util.*; |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | |
146
b0e83cab0bde
adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents:
134
diff
changeset
|
13 | public class IssueEditView extends IssueDetailView { |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
14 | private List<Project> projects = Collections.emptyList(); |
95
0552cc5755f3
fix: ... but ofc they should not appear more than once...
Mike Becker <universe@uap-core.de>
parents:
93
diff
changeset
|
15 | private Set<Version> versionsUpcoming = new HashSet<>(); |
0552cc5755f3
fix: ... but ofc they should not appear more than once...
Mike Becker <universe@uap-core.de>
parents:
93
diff
changeset
|
16 | private Set<Version> versionsRecent = new HashSet<>(); |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
17 | private List<User> users; |
134
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
18 | private List<Component> components; |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
19 | |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
20 | public List<Project> getProjects() { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
21 | return projects; |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
22 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
23 | |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
24 | public void setProjects(List<Project> projects) { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
25 | this.projects = projects; |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
26 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
27 | |
95
0552cc5755f3
fix: ... but ofc they should not appear more than once...
Mike Becker <universe@uap-core.de>
parents:
93
diff
changeset
|
28 | public Collection<Version> getVersionsUpcoming() { |
90
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
29 | return versionsUpcoming; |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
30 | } |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
31 | |
95
0552cc5755f3
fix: ... but ofc they should not appear more than once...
Mike Becker <universe@uap-core.de>
parents:
93
diff
changeset
|
32 | public Collection<Version> getVersionsRecent() { |
90
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
33 | return versionsRecent; |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
34 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
35 | |
99 | 36 | public void configureVersionSelectors(List<Version> versions) { |
90
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
37 | versionsRecent.clear(); |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
38 | versionsUpcoming.clear(); |
93
a44d59bbf447
adds graphical visualization for issue type and status
Mike Becker <universe@uap-core.de>
parents:
90
diff
changeset
|
39 | // keep the current selection, if any |
146
b0e83cab0bde
adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents:
134
diff
changeset
|
40 | versionsRecent.addAll(getIssue().getAffectedVersions()); |
b0e83cab0bde
adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents:
134
diff
changeset
|
41 | versionsUpcoming.addAll(getIssue().getResolvedVersions()); |
90
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
42 | for (var v : versions) { |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
43 | if (v.getStatus().isReleased()) { |
134
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
44 | if (!v.getStatus().equals(VersionStatus.Deprecated)) |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
45 | versionsRecent.add(v); |
90
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
46 | } else { |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
47 | versionsUpcoming.add(v); |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
48 | } |
2c74e36752f9
only show relevant versions in issue editor
Mike Becker <universe@uap-core.de>
parents:
86
diff
changeset
|
49 | } |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
50 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
51 | |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
52 | public List<User> getUsers() { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
53 | return users; |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
54 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
55 | |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
56 | public void setUsers(List<User> users) { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
57 | this.users = users; |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
58 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
59 | |
134
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
60 | public List<Component> getComponents() { |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
61 | return components; |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
62 | } |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
63 | |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
64 | public void setComponents(List<Component> components) { |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
65 | this.components = components; |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
66 | } |
f47e82cd6077
completes feature: project components
Mike Becker <universe@uap-core.de>
parents:
124
diff
changeset
|
67 | |
86
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
68 | public IssueStatus[] getIssueStatus() { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
69 | return IssueStatus.values(); |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
70 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
71 | |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
72 | public IssueCategory[] getIssueCategory() { |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
73 | return IssueCategory.values(); |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
74 | } |
0a658e53177c
improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
75 | } |