mirror of
https://github.com/jlengrand/github-api.git
synced 2026-03-11 00:11:25 +00:00
Compare commits
4 Commits
github-api
...
github-api
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9e62776905 | ||
|
|
9ba74b945d | ||
|
|
66656ce612 | ||
|
|
73a20ad829 |
2
pom.xml
2
pom.xml
@@ -7,7 +7,7 @@
|
||||
</parent>
|
||||
|
||||
<artifactId>github-api</artifactId>
|
||||
<version>1.24</version>
|
||||
<version>1.25</version>
|
||||
<name>GitHub API for Java</name>
|
||||
<url>http://github-api.kohsuke.org/</url>
|
||||
<description>GitHub API for Java</description>
|
||||
|
||||
@@ -43,15 +43,6 @@ public class GHOrganization extends GHPerson {
|
||||
return root.retrieveWithAuth("/organizations/"+login+"/teams",JsonTeams.class).toMap(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GHRepository getRepository(String name) throws IOException {
|
||||
try {
|
||||
return root.retrieveWithAuth3("/repos/" + login + '/' + name, GHRepository.class).wrap(root);
|
||||
} catch (FileNotFoundException e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Publicizes the membership.
|
||||
*/
|
||||
|
||||
@@ -87,7 +87,7 @@ public abstract class GHPerson {
|
||||
*/
|
||||
public GHRepository getRepository(String name) throws IOException {
|
||||
try {
|
||||
return root.retrieve3("/repos/" + login + '/' + name, GHRepository.class).wrap(root);
|
||||
return root.retrieveWithAuth3("/repos/" + login + '/' + name, GHRepository.class).wrap(root);
|
||||
} catch (FileNotFoundException e) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -72,9 +72,16 @@ public class GHRepository {
|
||||
private String created_at, pushed_at;
|
||||
private Map<Integer,GHMilestone> milestones = new HashMap<Integer, GHMilestone>();
|
||||
|
||||
private String master_branch;
|
||||
private String master_branch,language;
|
||||
private Map<String,GHCommit> commits = new HashMap<String, GHCommit>();
|
||||
|
||||
private GHRepoPermission permissions;
|
||||
|
||||
private static class GHRepoPermission {
|
||||
boolean pull,push,admin;
|
||||
}
|
||||
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
@@ -113,6 +120,25 @@ public class GHRepository {
|
||||
return name;
|
||||
}
|
||||
|
||||
public boolean hasPullAccess() {
|
||||
return permissions!=null && permissions.pull;
|
||||
}
|
||||
|
||||
public boolean hasPushAccess() {
|
||||
return permissions!=null && permissions.push;
|
||||
}
|
||||
|
||||
public boolean hasAdminAccess() {
|
||||
return permissions!=null && permissions.admin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the primary programming language.
|
||||
*/
|
||||
public String getLanguage() {
|
||||
return language;
|
||||
}
|
||||
|
||||
public GHUser getOwner() throws IOException {
|
||||
return root.getUser(owner.login); // because 'owner' isn't fully populated
|
||||
}
|
||||
|
||||
@@ -43,6 +43,15 @@ public class AppTest extends TestCase {
|
||||
r.getPullRequest(1);
|
||||
r.getPullRequests(GHIssueState.OPEN);
|
||||
}
|
||||
|
||||
public void testRepoPermissions() throws Exception {
|
||||
GitHub gh = GitHub.connect();
|
||||
GHRepository r = gh.getOrganization("jenkinsci").getRepository("jenkins");
|
||||
assertTrue(r.hasPullAccess());
|
||||
|
||||
r = gh.getOrganization("github").getRepository("tire");
|
||||
assertFalse(r.hasAdminAccess());
|
||||
}
|
||||
|
||||
public void tryGetMyself() throws Exception {
|
||||
GitHub hub = GitHub.connect();
|
||||
|
||||
Reference in New Issue
Block a user