View Javadoc

1   package com.atlassian.jira.rest.client.api.domain;
2   
3   import com.google.common.base.Objects;
4   
5   import java.net.URI;
6   
7   /**
8    *
9    */
10  public class Subtask {
11  
12      private final String issueKey;
13      private final URI issueUri;
14      private final String summary;
15      private final IssueType issueType;
16      private final Status status;
17  
18      public Subtask(String issueKey, URI issueUri, String summary, IssueType issueType, Status status) {
19          this.issueKey = issueKey;
20          this.issueUri = issueUri;
21          this.summary = summary;
22          this.issueType = issueType;
23          this.status = status;
24      }
25  
26      public String getIssueKey() {
27          return issueKey;
28      }
29  
30      public URI getIssueUri() {
31          return issueUri;
32      }
33  
34      public String getSummary() {
35          return summary;
36      }
37  
38      public IssueType getIssueType() {
39          return issueType;
40      }
41  
42      public Status getStatus() {
43          return status;
44      }
45  
46      @Override
47      public String toString() {
48          return Objects.toStringHelper(this).addValue(super.toString()).
49                  add("issueKey", issueKey).
50                  add("issueUri", issueUri).
51                  add("summary", summary).
52                  add("issueType", issueType).
53                  add("status", status).
54                  toString();
55      }
56  
57  
58      @Override
59      public boolean equals(Object obj) {
60          if (obj instanceof Subtask) {
61              Subtask that = (Subtask) obj;
62              return super.equals(obj) && Objects.equal(this.issueKey, that.issueKey)
63                      && Objects.equal(this.issueUri, that.issueUri)
64                      && Objects.equal(this.summary, that.summary)
65                      && Objects.equal(this.issueType, that.issueType)
66                      && Objects.equal(this.status, that.status);
67          }
68          return false;
69      }
70  
71      @Override
72      public int hashCode() {
73          return Objects.hashCode(super.hashCode(), issueKey, issueUri, summary, issueType, status);
74      }
75  
76  }