Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
1602 HTTP Get Repo Function
private void getRepoList(String username) {
// First, we insert the username into the repo url.
// The repo url is defined in GitHubs API docs (
this.url = this.baseUrl + username + "/repos";
// Next, we create a new JsonArrayRequest. This will use Volley to make a HTTP request
// that expects a JSON Array Response.
// To fully understand this, I'd recommend readng the office docs:
JsonArrayRequest arrReq = new JsonArrayRequest(Request.Method.GET, url,
new Response.Listener<JSONArray>() {
public void onResponse(JSONArray response) {
// Check the length of our response (to see if the user has any repos)
if (response.length() > 0) {
// The user does have repos, so let's loop through them all.
for (int i = 0; i < response.length(); i++) {
try {
// For each repo, add a new line to our repo list.
JSONObject jsonObj = response.getJSONObject(i);
String repoName = jsonObj.get("name").toString();
String lastUpdated = jsonObj.get("updated_at").toString();
addToRepoList(repoName, lastUpdated);
} catch (JSONException e) {
// If there is an error then output this to the logs.
Log.e("Volley", "Invalid JSON Object.");
} else {
// The user didn't have any repos.
setRepoListText("No repos found.");
new Response.ErrorListener() {
public void onErrorResponse(VolleyError error) {
// If there a HTTP error then add a note to our repo list.
setRepoListText("Error while calling REST API");
Log.e("Volley", error.toString());
// Add the request we just defined to our request queue.
// The request queue will automatically handle the request as soon as it can.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.