diff --git a/src/main/java/org/kohsuke/github/GHObject.java b/src/main/java/org/kohsuke/github/GHObject.java index 58be3907b..3504fc382 100644 --- a/src/main/java/org/kohsuke/github/GHObject.java +++ b/src/main/java/org/kohsuke/github/GHObject.java @@ -28,6 +28,7 @@ public abstract class GHObject { protected String url; protected long id; + protected String node_id; protected String created_at; protected String updated_at; @@ -123,6 +124,17 @@ public abstract class GHObject { return id; } + /** + * Get Global node_id from Github object. + * + * @see Using Global Node IDs + * + * @return Global Node ID. + */ + public String getNodeId() { + return node_id; + } + @SuppressFBWarnings(value = "UPM_UNCALLED_PRIVATE_METHOD", justification = "Bridge method of getId") private Object longToStringOrInt(long id, Class type) { if (type == String.class) diff --git a/src/main/java/org/kohsuke/github/GHOrganization.java b/src/main/java/org/kohsuke/github/GHOrganization.java index 2d955df87..2ea2411c4 100644 --- a/src/main/java/org/kohsuke/github/GHOrganization.java +++ b/src/main/java/org/kohsuke/github/GHOrganization.java @@ -139,7 +139,7 @@ public class GHOrganization extends GHPerson { * * @see documentation */ - public GHTeam getTeam(int teamId) throws IOException { + public GHTeam getTeam(long teamId) throws IOException { return root.createRequest() .withUrlPath(String.format("/organizations/%d/team/%d", id, teamId)) .fetch(GHTeam.class) diff --git a/src/main/java/org/kohsuke/github/GHTeam.java b/src/main/java/org/kohsuke/github/GHTeam.java index 9854f3e86..aae670410 100644 --- a/src/main/java/org/kohsuke/github/GHTeam.java +++ b/src/main/java/org/kohsuke/github/GHTeam.java @@ -1,6 +1,7 @@ package org.kohsuke.github; import java.io.IOException; +import java.net.URL; import java.util.Map; import java.util.Set; import java.util.TreeMap; @@ -10,14 +11,14 @@ import java.util.TreeMap; * * @author Kohsuke Kawaguchi */ -public class GHTeam implements Refreshable { +public class GHTeam extends GHObject implements Refreshable { + private String html_url; private String name; private String permission; private String slug; private String description; private Privacy privacy; - private int id; private GHOrganization organization; // populated by GET /user/teams where Teams+Orgs are returned together protected /* final */ GitHub root; @@ -129,15 +130,6 @@ public class GHTeam implements Refreshable { root.createRequest().method("PATCH").with("privacy", privacy).withUrlPath(api("")).send(); } - /** - * Gets id. - * - * @return the id - */ - public int getId() { - return id; - } - /** * Retrieves the current members. * @@ -321,4 +313,9 @@ public class GHTeam implements Refreshable { public void refresh() throws IOException { root.createRequest().withUrlPath(api("")).fetchInto(this).wrapUp(root); } + + @Override + public URL getHtmlUrl() { + return GitHubClient.parseURL(html_url); + } } diff --git a/src/main/java/org/kohsuke/github/GitHub.java b/src/main/java/org/kohsuke/github/GitHub.java index f05d92f9c..797f80491 100644 --- a/src/main/java/org/kohsuke/github/GitHub.java +++ b/src/main/java/org/kohsuke/github/GitHub.java @@ -731,7 +731,7 @@ public class GitHub { * @see deprecation notice */ @Deprecated - public GHTeam getTeam(int id) throws IOException { + public GHTeam getTeam(long id) throws IOException { return createRequest().withUrlPath("/teams/" + id).fetch(GHTeam.class).wrapUp(this); }