function rebuildDB()
    {
        $depdb = array('_version' => $this->_version);
        if (!$this->hasWriteAccess()) {
            // allow startup for read-only with older Registry
            return $depdb;
        }

        $packages = $this->_registry->listAllPackages();
        if (PEAR::isError($packages)) {
            return $packages;
        }

        foreach ($packages as $channel => $ps) {
            foreach ($ps as $package) {
                $package = $this->_registry->getPackage($package, $channel);
                if (PEAR::isError($package)) {
                    return $package;
                }
                $this->_setPackageDeps($depdb, $package);
            }
        }

        $error = $this->_writeDepDB($depdb);
        if (PEAR::isError($error)) {
            return $error;
        }

        $this->_cache = $depdb;
        return true;
    }
function rebuildDB()
    {
        $depdb = array('_version' => $this->_version);
        if (!$this->hasWriteAccess()) {
            // allow startup for read-only with older Registry
            return $depdb;
        }

        $packages = $this->_registry->listAllPackages();
        if (PEAR::isError($packages)) {
            return $packages;
        }

        foreach ($packages as $channel => $ps) {
            foreach ($ps as $package) {
                $package = $this->_registry->getPackage($package, $channel);
                if (PEAR::isError($package)) {
                    return $package;
                }
                $this->_setPackageDeps($depdb, $package);
            }
        }

        $error = $this->_writeDepDB($depdb);
        if (PEAR::isError($error)) {
            return $error;
        }

        $this->_cache = $depdb;
        return true;
    }
function rebuildDB ( ) { $ depdb = array ( '_version' => $ this -> _version ) ; if ( ! $ this -> hasWriteAccess ( ) ) { // allow startup for read-only with older Registry return $ depdb ; } $ packages = $ this -> _registry -> listAllPackages ( ) ; if ( PEAR :: isError ( $ packages ) ) { return $ packages ; } foreach ( $ packages as $ channel => $ ps ) { foreach ( $ ps as $ package ) { $ package = $ this -> _registry -> getPackage ( $ package , $ channel ) ; if ( PEAR :: isError ( $ package ) ) { return $ package ; } $ this -> _setPackageDeps ( $ depdb , $ package ) ; } } $ error = $ this -> _writeDepDB ( $ depdb ) ; if ( PEAR :: isError ( $ error ) ) { return $ error ; } $ this -> _cache = $ depdb ; return true ; }
Rebuild the dependency DB by reading registry entries.
@return true|PEAR_Error
Rebuild the dependency DB by reading registry entries .