コード例 #1
0
ファイル: lists.py プロジェクト: devzero2000/pyrpm
    def search(self, name):
        """Return list of packages providing file with name.

        The list may point to internal structures of FilenamesList and may be
        changed by calls to addPkg() and removePkg()."""
        (dirname, basename) = functions.pathsplit2(name)
        return self.path.get(dirname, {}).get(basename, [])
コード例 #2
0
ファイル: lists.py プロジェクト: devzero2000/pyrpm
def genBasenames2(oldfilenames):
    (basenames, dirnames) = ([], [])
    for filename in oldfilenames:
        (dirname, basename) = functions.pathsplit2(filename)
        basenames.append(basename)
        dirnames.append(dirname)
    return (basenames, dirnames)
コード例 #3
0
ファイル: lists.py プロジェクト: kholia/pyrpm
    def search(self, name):
        """Return list of packages providing file with name.

        The list may point to internal structures of FilenamesList and may be
        changed by calls to addPkg() and removePkg()."""
        (dirname, basename) = functions.pathsplit2(name)
        return self.path.get(dirname, {}).get(basename, [])
コード例 #4
0
ファイル: lists.py プロジェクト: kholia/pyrpm
def genBasenames2(oldfilenames):
    (basenames, dirnames) = ([], [])
    for filename in oldfilenames:
        (dirname, basename) = functions.pathsplit2(filename)
        basenames.append(basename)
        dirnames.append(dirname)
    return (basenames, dirnames)
コード例 #5
0
ファイル: rpmdb.py プロジェクト: kholia/pyrpm
    def numFileDuplicates(self, filename):
        (dirname, basename) = functions.pathsplit2(filename)
        if not self.basenames_cache.has_key(basename):
            data = self.basenames_db.get(basename, '')
            filedict = {}
            self.basenames_cache[basename] = filedict

            for id, idx in self.iterIdIdx(data):
                pkg = self.getPkgById(id)
                if not pkg:
                    continue
                f = pkg.iterFilenames()[idx]
                filedict.setdefault(f, []).append(pkg)
        return len(self.basenames_cache[basename].get(filename, []))
コード例 #6
0
ファイル: rpmdb.py プロジェクト: kholia/pyrpm
    def searchFilenames(self, filename):
        (dirname, basename) = functions.pathsplit2(filename)
        data1 = self.basenames_db.get(basename, "")
        data2 = self.dirnames_db.get(dirname, '')
        dirname_ids = {}
        for id in self.iterId(data2):
            dirname_ids[id] = None

        result = []
        for id, idx in self.iterIdIdx(data1):
            if id not in dirname_ids:
                continue
            pkg = self.getPkgById(id)
            if pkg and pkg.iterFilenames()[idx] == filename:
                result.append(pkg)
        return result
コード例 #7
0
ファイル: lists.py プロジェクト: devzero2000/pyrpm
 def numDuplicates(self, filename):
     (dirname, basename) = functions.pathsplit2(filename)
     return len(self.path.get(dirname, {}).get(basename, {}))
コード例 #8
0
ファイル: lists.py プロジェクト: kholia/pyrpm
 def numDuplicates(self, filename):
     (dirname, basename) = functions.pathsplit2(filename)
     return len(self.path.get(dirname, {}).get(basename, {}))