diff options
author | Remi Collet <fedora@famillecollet.com> | 2014-05-15 09:28:35 +0200 |
---|---|---|
committer | Remi Collet <fedora@famillecollet.com> | 2014-05-15 09:28:35 +0200 |
commit | d84a48e948b80ecca27e6b8d9e301a1489f33647 (patch) | |
tree | 545bfa05b80ad94c38375661383fbd35d53ca1bd /class/FedoraPkgdb.php | |
parent | 01deba7406b28fb5c7d7a2bc5a9b1b9ae954009e (diff) |
pkgdb2 compatibility, ++, bump fedpkg cli version to 0.3.0-dev
Diffstat (limited to 'class/FedoraPkgdb.php')
-rw-r--r-- | class/FedoraPkgdb.php | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/class/FedoraPkgdb.php b/class/FedoraPkgdb.php index 1650493..afe7adc 100644 --- a/class/FedoraPkgdb.php +++ b/class/FedoraPkgdb.php @@ -7,7 +7,7 @@ * * PHP version 5 * - * Copyright (C) 2010-2013 Remi Collet + * Copyright (C) 2010-2014 Remi Collet * http://github.com/remicollet/rpmphp. * * Inspired from python-fedora @@ -29,7 +29,7 @@ * * @author Remi Collet <remi@fedoraproject.org> * @author Johan Cwiklinski <johan@x-tnd.be> - * @copyright 2010-2013 Remi Collet + * @copyright 2010-2014 Remi Collet * @license http://www.gnu.org/licenses/lgpl-2.1.txt LGPL License 2.1 or (at your option) any later version * @link http://github.com/remicollet/rpmphp/ * @since The begining of times. @@ -46,7 +46,7 @@ class FedoraPkgdb extends FedoraClient } else { $server = 'admin.fedoraproject.org'; } - parent::__construct("http://$server/api/", $options); + parent::__construct("https://$server/pkgdb/api/", $options); $rep = $this->cache->get(__METHOD__, $this->url); if ($rep!==false) { @@ -109,21 +109,13 @@ class FedoraPkgdb extends FedoraClient function getPackageInfo($name, $refresh=false) { - if ($this->_version > 0) { - $url='package/acl/get/'.urlencode($name); - $rep = ($refresh ? false : $this->cache->get(__METHOD__, $this->url.$url)); - if ($rep) { - $this->logDebug(2, __METHOD__."($name) get from cache"); - } else { - $rep =$this->sendRequest($url); - $this->cache->save($rep, __METHOD__, $this->url.$url); - $this->logDebug(2, __METHOD__."($name) save to cache"); - } - $this->logDebug(8, print_r($rep, true)); - return false; - } - - $url='acls/name/'.urlencode($name); + static $convert=array( + 'master' => 'devel', + 'el5' => 'EL-5', + 'el6' => 'EL-6', + 'epel7' => 'EL-7', + ); + $url='package/'.urlencode($name); $rep = ($refresh ? false : $this->cache->get(__METHOD__, $this->url.$url)); if ($rep) { $this->logDebug(2, __METHOD__."($name) get from cache"); @@ -139,8 +131,18 @@ class FedoraPkgdb extends FedoraClient } $this->logDebug(8, print_r($rep, true)); $branches = array(); - foreach ($rep['packageListings'] as $pack) { - $branches[$pack['collection']['branchname']] = $pack; + foreach ($rep['packages'] as $pack) { + $n = $pack['collection']['branchname']; + if (isset($convert[$n])) $n=$convert[$n]; + + $pack['owner'] = $pack['point_of_contact']; + $pack['people'] = array(); + foreach ($pack['acls'] as $acl) { + if ($acl['acl']=='commit' && $acl['status']=='Approved') { + $pack['people'][] = $acl['fas_name']; + } + } + $branches[$n] = $pack; } $this->logDebug(7, print_r($branches, true)); return $branches; |