Package com.mycorp.examples.githubservice.impl

Source Code of com.mycorp.examples.githubservice.impl.GitHubService

/*******************************************************************************
* Copyright (c) 2014 Remain BV All rights reserved.
*
* This program and the accompanying materials are made available under the terms
* of the Eclipse Public License v1.0 which accompanies this distribution, and is
* available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors: Wim Jongman - initial API and implementation
******************************************************************************/
package com.mycorp.examples.githubservice.impl;

import java.io.IOException;
import java.util.List;

import org.eclipse.egit.github.core.Issue;
import org.eclipse.egit.github.core.Repository;
import org.eclipse.egit.github.core.client.GitHubClient;
import org.eclipse.egit.github.core.service.IssueService;
import org.eclipse.egit.github.core.service.RepositoryService;

import com.mycorp.examples.githubservice.IGitHubService;

/**
* Example OSGi service for retrieving some data from GitHub.
*
* @since 1.0
*/
public class GitHubService implements IGitHubService {

  /**
   * Stand alone service test. To get an access token see see
   * https://help.github.com/articles/creating-an-access-token-
   * for-command-line-use/
   */
  public static void main(String[] args) {
    String token = "your token here";
    GitHubService service = new GitHubService();
    String[] repos = service.getRepositories(token);
    for (String repository : repos) {
      System.out.println(repository);
      System.out.println("================");

      String[] issues = service
          .getIssues(token, "wimjongman", repository);
      if (issues.length == 0) {
        System.out.println("*** No Issues ***");
      }
      for (String issue : issues) {
        System.out.println(issue);
      }
      System.out.println();
    }
  }

  public String[] getRepositories(String pAccessToken) {
    GitHubClient client = new GitHubClient();
    client.setOAuth2Token(pAccessToken);
    RepositoryService service = new RepositoryService(client);
    try {
      List<Repository> repositories = service.getRepositories();
      String[] result = new String[repositories.size()];
      for (int i = 0; i < repositories.size(); i++) {
        result[i] = repositories.get(i).getName();
      }
      return result;
    } catch (IOException e) {
      return null;
    }
  }

  public String[] getIssues(String pAccessToken, String owner,
      String pRepository) {
    GitHubClient client = new GitHubClient();
    client.setOAuth2Token(pAccessToken);
    IssueService issueService = new IssueService(client);
    try {
      List<Issue> issues = issueService.getIssues("wimjongman",
          pRepository, null);
      String[] result = new String[issues.size()];
      for (int i = 0; i < issues.size(); i++) {
        result[i] = issues.get(i).getNumber() + "::"
            + issues.get(i).getTitle();
      }
      return result;
    } catch (IOException e) {
      return null;
    }
  }
}
TOP

Related Classes of com.mycorp.examples.githubservice.impl.GitHubService

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.