Package com.jcabi.github
Interface GitHub
@Immutable
public interface GitHub
GitHub client, starting point to the entire library.
This is how you start communicating with GitHub API:
GitHub github = new RtGitHub(oauthKey);
Repo repo = github.repos().get(
new Coordinates.Simple("jcabi/jcabi-github")
);
Issues issues = repo.issues();
Issue issue = issues.post("issue title", "issue body");
It is strongly recommended to use
RetryWire to avoid
accidental I/O exceptions:
GitHub github = new RtGitHub(
new RtGitHub(oauthKey)
.entry()
.through(RetryWire.class)
);
The interfaces in this packages are trying to cover as much
as possible of GitHub API. However, there are parts of API that are
rarely used and making Java classes for them is not an effective
idea. That's why GitHub class has entry() method,
which returns an entry point to the RESTful API. For example, you
want to use
"Search
Repositories" feature of GitHub:
GitHub github = new RtGitHub(oauthKey);
int found = github.entry()
.uri().path("/search/repositories").back()
.method(Request.GET)
.fetch()
.as(JsonResponse.class)
.getJsonObject()
.getNumber("total_count")
.intValue();- Since:
- 0.1
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionjakarta.json.JsonObjectemojis()Get emojis.com.jcabi.http.Requestentry()RESTful request, an entry point to the GitHub API.gists()Get Gists API entry point.Get gitignores.limits()Rate limit API entry point.markdown()Get Markdown API entry point.jakarta.json.JsonObjectmeta()Get meta information.Get Organizations API entry point.repos()Get repositories.search()Search API entry point.users()Get Users API entry point.
-
Method Details
-
entry
com.jcabi.http.Request entry()RESTful request, an entry point to the GitHub API.- Returns:
- Request
-
repos
Repos repos()Get repositories.- Returns:
- Repositories
-
gists
Gists gists()Get Gists API entry point.- Returns:
- Gists API entry point
-
users
Users users()Get Users API entry point.- Returns:
- Users API entry point
- Since:
- 0.4
-
organizations
Organizations organizations()Get Organizations API entry point.- Returns:
- Organizations API entry point
- Since:
- 0.24
-
markdown
Markdown markdown()Get Markdown API entry point.- Returns:
- Markdown API entry point
- Since:
- 0.6
-
limits
Limits limits()Rate limit API entry point.- Returns:
- Rate limit API
- Since:
- 0.6
-
search
Search search()Search API entry point.- Returns:
- Search API
- Since:
- 0.8
-
gitignores
Gitignores gitignores()Get gitignores.- Returns:
- Gitignotes API
- Since:
- 0.8
- See Also:
-
meta
Get meta information.- Returns:
- JSON with meta
- Throws:
IOException- If there is any I/O problem- Since:
- 0.6
- See Also:
-
emojis
Get emojis.- Returns:
- JSON with emojis
- Throws:
IOException- If there is any I/O problem- Since:
- 0.6
- See Also:
-