Example #1
0
 public function getUserRepositoriesMatching($pattern)
 {
     $this->assertAuthenticated();
     // Temporary header https://developer.github.com/v3/repos/#list-your-repositories
     $this->github->setHeaders(['Accept' => 'application/vnd.github.moondragon+json']);
     $paginator = new ResultPager($this->github);
     $repositories = $paginator->fetchAll($this->github->currentUser(), 'repositories');
     $repositories = array_map(function ($repository) {
         return $repository['full_name'];
     }, $repositories);
     $pattern = '/^' . preg_quote($pattern, '/') . '$/';
     $pattern = str_replace('\\*', '.+', $pattern);
     return array_filter($repositories, function ($repository) use($pattern) {
         return preg_match($pattern, $repository) === 1;
     });
 }
 /**
  * @param $repositoryName
  * @return array
  * @throws InvalidConfigurationException
  */
 public function getRepositoryConfiguration($repositoryName)
 {
     $this->authenticate();
     if ($this->repositoryConfigurationCollection === NULL) {
         $this->repositoryConfigurationCollection = $this->gitHubClient->currentUser()->repositories();
     }
     foreach ($this->repositoryConfigurationCollection as $repository) {
         if ($repository['name'] == $repositoryName) {
             return $repository;
         }
     }
     return array();
 }