Skip to content

Commit 4d2f6a1

Browse files
committed
adding support for jira link
1 parent 8350fef commit 4d2f6a1

File tree

2 files changed

+110
-39
lines changed

2 files changed

+110
-39
lines changed

src/main/java/org/zendesk/client/v2/Zendesk.java

Lines changed: 5 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -41,45 +41,7 @@
4141
import org.asynchttpclient.request.body.multipart.StringPart;
4242
import org.slf4j.Logger;
4343
import org.slf4j.LoggerFactory;
44-
import org.zendesk.client.v2.model.AgentRole;
45-
import org.zendesk.client.v2.model.Attachment;
46-
import org.zendesk.client.v2.model.Audit;
47-
import org.zendesk.client.v2.model.Automation;
48-
import org.zendesk.client.v2.model.Brand;
49-
import org.zendesk.client.v2.model.Comment;
50-
import org.zendesk.client.v2.model.ComplianceDeletionStatus;
51-
import org.zendesk.client.v2.model.DeletedTicket;
52-
import org.zendesk.client.v2.model.Field;
53-
import org.zendesk.client.v2.model.Forum;
54-
import org.zendesk.client.v2.model.Group;
55-
import org.zendesk.client.v2.model.GroupMembership;
56-
import org.zendesk.client.v2.model.Identity;
57-
import org.zendesk.client.v2.model.JobStatus;
58-
import org.zendesk.client.v2.model.Locale;
59-
import org.zendesk.client.v2.model.Macro;
60-
import org.zendesk.client.v2.model.Metric;
61-
import org.zendesk.client.v2.model.Organization;
62-
import org.zendesk.client.v2.model.OrganizationField;
63-
import org.zendesk.client.v2.model.OrganizationMembership;
64-
import org.zendesk.client.v2.model.SatisfactionRating;
65-
import org.zendesk.client.v2.model.SearchResultEntity;
66-
import org.zendesk.client.v2.model.SortOrder;
67-
import org.zendesk.client.v2.model.Status;
68-
import org.zendesk.client.v2.model.SuspendedTicket;
69-
import org.zendesk.client.v2.model.Ticket;
70-
import org.zendesk.client.v2.model.TicketCount;
71-
import org.zendesk.client.v2.model.TicketForm;
72-
import org.zendesk.client.v2.model.TicketImport;
73-
import org.zendesk.client.v2.model.TicketPage;
74-
import org.zendesk.client.v2.model.TicketResult;
75-
import org.zendesk.client.v2.model.TimeZone;
76-
import org.zendesk.client.v2.model.Topic;
77-
import org.zendesk.client.v2.model.Trigger;
78-
import org.zendesk.client.v2.model.TwitterMonitor;
79-
import org.zendesk.client.v2.model.User;
80-
import org.zendesk.client.v2.model.UserField;
81-
import org.zendesk.client.v2.model.UserRelatedInfo;
82-
import org.zendesk.client.v2.model.View;
44+
import org.zendesk.client.v2.model.*;
8345
import org.zendesk.client.v2.model.dynamic.DynamicContentItem;
8446
import org.zendesk.client.v2.model.dynamic.DynamicContentItemVariant;
8547
import org.zendesk.client.v2.model.hc.Article;
@@ -3375,6 +3337,10 @@ public Iterable<ContentTag> getContentTags(int pageSize, String namePrefix) {
33753337
handleListWithAfterCursorButNoLinks(ContentTag.class, afterCursorUriBuilder, "records"));
33763338
}
33773339

3340+
public Iterable<JiraLink> getJiraLinks() {
3341+
return new PagedIterable<>(cnst("/jira/links"), handleList(JiraLink.class, "links"));
3342+
}
3343+
33783344
private Uri buildContentTagsSearchUrl(int pageSize, String namePrefixFilter, String afterCursor) {
33793345
final StringBuilder uriBuilder =
33803346
new StringBuilder("/guide/content_tags?page[size]=").append(pageSize);
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
package org.zendesk.client.v2.model;
2+
3+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
4+
import com.fasterxml.jackson.annotation.JsonProperty;
5+
import java.io.Serializable;
6+
import java.util.Date;
7+
8+
@JsonIgnoreProperties(ignoreUnknown = true)
9+
public class JiraLink implements SearchResultEntity, Serializable {
10+
11+
private static final long serialVersionUID = 1L;
12+
13+
private Long id;
14+
private Date createdAt;
15+
private Date updatedAt;
16+
private String issueId;
17+
private String issueKey;
18+
private Long ticketId;
19+
private String url;
20+
21+
public Long getId() {
22+
return id;
23+
}
24+
25+
public void setId(Long id) {
26+
this.id = id;
27+
}
28+
29+
@JsonProperty("created_at")
30+
public Date getCreatedAt() {
31+
return createdAt;
32+
}
33+
34+
public void setCreatedAt(Date createdAt) {
35+
this.createdAt = createdAt;
36+
}
37+
38+
@JsonProperty("updated_at")
39+
public Date getUpdatedAt() {
40+
return updatedAt;
41+
}
42+
43+
public void setUpdatedAt(Date updatedAt) {
44+
this.updatedAt = updatedAt;
45+
}
46+
47+
@JsonProperty("issue_id")
48+
public String getIssueId() {
49+
return issueId;
50+
}
51+
52+
public void setIssueId(String issueId) {
53+
this.issueId = issueId;
54+
}
55+
56+
@JsonProperty("issue_key")
57+
public String getIssueKey() {
58+
return issueKey;
59+
}
60+
61+
public void setIssueKey(String issueKey) {
62+
this.issueKey = issueKey;
63+
}
64+
65+
@JsonProperty("ticket_id")
66+
public Long getTicketId() {
67+
return ticketId;
68+
}
69+
70+
public void setTicketId(Long ticketId) {
71+
this.ticketId = ticketId;
72+
}
73+
74+
@JsonProperty("url")
75+
public String getUrl() {
76+
return url;
77+
}
78+
79+
public void setUrl(String url) {
80+
this.url = url;
81+
}
82+
83+
@Override
84+
public String toString() {
85+
return "JiraLink{"
86+
+ "id="
87+
+ id
88+
+ ", createdAt="
89+
+ createdAt
90+
+ ", updatedAt="
91+
+ updatedAt
92+
+ ", issueId='"
93+
+ issueId
94+
+ '\''
95+
+ ", issueKey='"
96+
+ issueKey
97+
+ '\''
98+
+ ", ticketId="
99+
+ ticketId
100+
+ ", url='"
101+
+ url
102+
+ '\''
103+
+ '}';
104+
}
105+
}

0 commit comments

Comments
 (0)