From 7738f688a6e21b3caf07aaa321de87e2e10efa41 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Thu, 10 Feb 2011 11:42:19 +0100 Subject: [PATCH] [entropy.db] introduce EntropyRepositoryBase.repository_id() --- client/text_query.py | 4 ++-- libraries/entropy/db/skel.py | 9 +++++++++ libraries/entropy/dep.py | 2 +- libraries/entropy/server/interfaces/main.py | 12 ++++++------ libraries/tests/db.py | 2 +- libraries/tests/dep.py | 3 ++- 6 files changed, 21 insertions(+), 11 deletions(-) diff --git a/client/text_query.py b/client/text_query.py index 5483a6867..3708ba0d8 100644 --- a/client/text_query.py +++ b/client/text_query.py @@ -1514,7 +1514,7 @@ def print_package_info(package_id, entropy_client, entropy_repository, repoinfo = '' desc = '' if show_repo_if_quiet: - repoinfo = "[%s] " % (entropy_repository.name,) + repoinfo = "[%s] " % (entropy_repository.repository_id(),) if show_desc_if_quiet: desc = ' %s' % (entropy_repository.retrieveDescription(package_id),) print_generic("%s%s%s" % (repoinfo, pkgatom, desc,)) @@ -1566,7 +1566,7 @@ def print_package_info(package_id, entropy_client, entropy_repository, print_info(red(" @@ %s: " % (_("Package"),) ) + bold(pkgatom) + \ " "+ blue("%s: " % (_("branch"),)) + bold(pkgbranch) + \ - ", [" + purple(str(entropy_repository.name)) + "] ") + ", [" + purple(str(entropy_repository.repository_id())) + "] ") if not strict_output and extended: pkgname = entropy_repository.retrieveName(package_id) or corrupted_str pkgcat = entropy_repository.retrieveCategory(package_id) or \ diff --git a/libraries/entropy/db/skel.py b/libraries/entropy/db/skel.py index 1ea6ece0b..5a8ae3c79 100644 --- a/libraries/entropy/db/skel.py +++ b/libraries/entropy/db/skel.py @@ -411,6 +411,15 @@ class EntropyRepositoryBase(TextInterface, EntropyRepositoryPluginStore, object) """ return self._readonly + def repository_id(self): + """ + Return the repository identifier assigned to this instance. + + @return: the repository identifier + @rtype: string + """ + return self.name + def close(self): """ Close repository storage communication and open disk files. diff --git a/libraries/entropy/dep.py b/libraries/entropy/dep.py index 7471c63c1..1d2477a30 100644 --- a/libraries/entropy/dep.py +++ b/libraries/entropy/dep.py @@ -837,7 +837,7 @@ class Dependency(object): """ eval_data = set() for entropy_repository in self.__entropy_repository_list: - repo_id = entropy_repository.name + repo_id = entropy_repository.repository_id() pkg_deps, res = entropy_repository.atomMatch(self.__dep, multiMatch = True) if res == 0: diff --git a/libraries/entropy/server/interfaces/main.py b/libraries/entropy/server/interfaces/main.py index 398ec3060..dc6a9c877 100644 --- a/libraries/entropy/server/interfaces/main.py +++ b/libraries/entropy/server/interfaces/main.py @@ -92,7 +92,7 @@ class ServerEntropyRepositoryPlugin(EntropyRepositoryPlugin): self,) ) - repo = entropy_repository_instance.name + repo = entropy_repository_instance.repository_id() local_dbfile = self._metadata['local_dbfile'] taint_file = self._server._get_local_repository_taint_file(repo) if os.path.isfile(taint_file): @@ -134,7 +134,7 @@ class ServerEntropyRepositoryPlugin(EntropyRepositoryPlugin): if self._server.Mirrors is None: return 0 - repo = entropy_repository_instance.name + repo = entropy_repository_instance.repository_id() dbfile = self._metadata['local_dbfile'] read_only = self._metadata['read_only'] if not read_only: @@ -162,7 +162,7 @@ class ServerEntropyRepositoryPlugin(EntropyRepositoryPlugin): dbs = ServerRepositoryStatus() dbfile = self._metadata['local_dbfile'] - repo = entropy_repository_instance.name + repo = entropy_repository_instance.repository_id() read_only = self._metadata['read_only'] if read_only: # do not taint database @@ -252,7 +252,7 @@ class ServerEntropyRepositoryPlugin(EntropyRepositoryPlugin): def _write_rss_for_removed_package(self, repo_db, package_id): # setup variables we're going to use - srv_repo = repo_db.name + srv_repo = repo_db.repository_id() rss_revision = repo_db.retrieveRevision(package_id) rss_atom = "%s~%s" % (repo_db.retrieveAtom(package_id), rss_revision,) status = ServerRepositoryStatus() @@ -297,7 +297,7 @@ class ServerEntropyRepositoryPlugin(EntropyRepositoryPlugin): def _write_rss_for_added_package(self, repo_db, package_data): # setup variables we're going to use - srv_repo = repo_db.name + srv_repo = repo_db.repository_id() rss_atom = "%s~%s" % (package_data['atom'], package_data['revision'],) status = ServerRepositoryStatus() srv_updates = status.get_updates_log(srv_repo) @@ -4179,7 +4179,7 @@ class Server(Client): name = repository_id, xcache = False # always set to False, if you want to enable # you need to make sure that client-side and server-side caches - # don't collide due to sharing ServerPackagesRepository.name + # don't collide due to sharing ServerPackagesRepository.repository_id() ) etp_repo_meta = { 'lock_remote': lock_remote, diff --git a/libraries/tests/db.py b/libraries/tests/db.py index 544c280fd..10b1b3f96 100644 --- a/libraries/tests/db.py +++ b/libraries/tests/db.py @@ -166,7 +166,7 @@ class EntropyRepositoryTest(unittest.TestCase): def test_db_creation(self): self.assert_(isinstance(self.test_db, EntropyRepository)) - self.assertEqual(self.test_db_name, self.test_db.name) + self.assertEqual(self.test_db_name, self.test_db.repository_id()) self.assert_(self.test_db._doesTableExist('baseinfo')) self.assert_(self.test_db._doesTableExist('extrainfo')) diff --git a/libraries/tests/dep.py b/libraries/tests/dep.py index 66d1995cf..768556186 100644 --- a/libraries/tests/dep.py +++ b/libraries/tests/dep.py @@ -214,7 +214,8 @@ class DepTest(unittest.TestCase): self.assertEqual(data, new_data) deps.append(dep) deps.sort() - selected_matches = [(test_db.atomMatch(deps[2])[0], test_db.name)] + selected_matches = [(test_db.atomMatch(deps[2])[0], + test_db.repository_id())] depstrings = [ ("( %s & %s ) | %s" % (deps[0], deps[1], deps[2]), [deps[2]]),