src/main/java/de/uapcore/lightpit/entities/Issue.java

changeset 75
33b6843fdf8a
parent 62
833e0385572a
child 81
1a2e7b5d48f7
equal deleted inserted replaced
74:91d1fc2a3a14 75:33b6843fdf8a
28 */ 28 */
29 package de.uapcore.lightpit.entities; 29 package de.uapcore.lightpit.entities;
30 30
31 import java.sql.Date; 31 import java.sql.Date;
32 import java.sql.Timestamp; 32 import java.sql.Timestamp;
33 import java.time.Instant;
34 import java.util.Collections;
33 import java.util.List; 35 import java.util.List;
34 import java.util.Objects; 36 import java.util.Objects;
35 37
36 public final class Issue { 38 public final class Issue {
37 39
38 private final int id; 40 private int id;
39 private final Project project; 41 private final Project project;
40 42
41 private IssueStatus status; 43 private IssueStatus status;
42 private IssueCategory category; 44 private IssueCategory category;
43 45
44 private String subject; 46 private String subject;
45 private String description; 47 private String description;
48 private User assignee;
46 49
47 private List<Version> affectedVersions; 50 private List<Version> affectedVersions = Collections.emptyList();
48 private Version scheduledVersion; 51 private List<Version> scheduledVersions = Collections.emptyList();
49 private Version resolvedVersion; 52 private List<Version> resolvedVersions = Collections.emptyList();
50 53
51 private Timestamp created; 54 private Timestamp created = Timestamp.from(Instant.now());
52 private Timestamp updated; 55 private Timestamp updated = Timestamp.from(Instant.now());
53 private Date eta; 56 private Date eta;
54 57
55 public Issue(int id, Project project) { 58 public Issue(int id, Project project) {
56 this.id = id; 59 this.id = id;
57 this.project = project; 60 this.project = project;
58 } 61 }
59 62
60 public int getId() { 63 public int getId() {
61 return id; 64 return id;
65 }
66
67 /**
68 * Should only be used by a DAO to store the generated ID.
69 * @param id the freshly generated ID returned from the database after insert
70 */
71 public void setId(int id) {
72 this.id = id;
62 } 73 }
63 74
64 public Project getProject() { 75 public Project getProject() {
65 return project; 76 return project;
66 } 77 }
95 106
96 public void setDescription(String description) { 107 public void setDescription(String description) {
97 this.description = description; 108 this.description = description;
98 } 109 }
99 110
111 public User getAssignee() {
112 return assignee;
113 }
114
115 public void setAssignee(User assignee) {
116 this.assignee = assignee;
117 }
118
100 public List<Version> getAffectedVersions() { 119 public List<Version> getAffectedVersions() {
101 return affectedVersions; 120 return affectedVersions;
102 } 121 }
103 122
104 public void setAffectedVersions(List<Version> affectedVersions) { 123 public void setAffectedVersions(List<Version> affectedVersions) {
105 this.affectedVersions = affectedVersions; 124 this.affectedVersions = affectedVersions;
106 } 125 }
107 126
108 public Version getScheduledVersion() { 127 public List<Version> getScheduledVersions() {
109 return scheduledVersion; 128 return scheduledVersions;
110 } 129 }
111 130
112 public void setScheduledVersion(Version scheduledVersion) { 131 public void setScheduledVersions(List<Version> scheduledVersions) {
113 this.scheduledVersion = scheduledVersion; 132 this.scheduledVersions = scheduledVersions;
114 } 133 }
115 134
116 public Version getResolvedVersion() { 135 public List<Version> getResolvedVersions() {
117 return resolvedVersion; 136 return resolvedVersions;
118 } 137 }
119 138
120 public void setResolvedVersion(Version resolvedVersion) { 139 public void setResolvedVersions(List<Version> resolvedVersions) {
121 this.resolvedVersion = resolvedVersion; 140 this.resolvedVersions = resolvedVersions;
122 } 141 }
123 142
124 public Timestamp getCreated() { 143 public Timestamp getCreated() {
125 return created; 144 return created;
126 } 145 }

mercurial