From 6af6a2115ef9b9a3cdc4c7100adc1fbbdedc0a85 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Fri, 6 Dec 2013 14:56:10 +0100 Subject: [PATCH] [entropy.client] move Trigger class under package.actions, make it "private" --- lib/entropy/client/interfaces/loaders.py | 5 ----- .../actions/_triggers.py} | 9 +++------ .../interfaces/package/actions/install.py | 18 ++++++++++++------ .../interfaces/package/actions/remove.py | 7 +++++-- lib/tests/client.py | 13 +++++++------ 5 files changed, 27 insertions(+), 25 deletions(-) rename lib/entropy/client/interfaces/{trigger.py => package/actions/_triggers.py} (98%) diff --git a/lib/entropy/client/interfaces/loaders.py b/lib/entropy/client/interfaces/loaders.py index 2424efeb7..69b3aa702 100644 --- a/lib/entropy/client/interfaces/loaders.py +++ b/lib/entropy/client/interfaces/loaders.py @@ -25,7 +25,6 @@ class LoadersMixin: self._spm_cache = {} # instantiate here to avoid runtime loading, that can cause failures # during complete system upgrades - from entropy.client.interfaces.trigger import Trigger from entropy.client.interfaces.repository import Repository from entropy.client.interfaces.package import \ PackageActionFactory, PackageActionFactoryWrapper @@ -37,7 +36,6 @@ class LoadersMixin: self.__package_factory = PackageActionFactory self.__package_loader = PackageActionFactoryWrapper self.__repository_loader = Repository - self.__trigger_loader = Trigger self.__sets_loader = Sets self.__configuration_updates_loader = ConfigurationUpdates self.__webservice_factory = ClientWebServiceFactory @@ -87,9 +85,6 @@ class LoadersMixin: qa_intf.set_title = self.set_title return qa_intf - def Triggers(self, *args, **kwargs): - return self.__trigger_loader(self, *args, **kwargs) - def Repositories(self, *args, **kwargs): """ Load Entropy Repositories manager instance object diff --git a/lib/entropy/client/interfaces/trigger.py b/lib/entropy/client/interfaces/package/actions/_triggers.py similarity index 98% rename from lib/entropy/client/interfaces/trigger.py rename to lib/entropy/client/interfaces/package/actions/_triggers.py index 25bb585a4..65c6e6749 100644 --- a/lib/entropy/client/interfaces/trigger.py +++ b/lib/entropy/client/interfaces/package/actions/_triggers.py @@ -14,16 +14,15 @@ import os import subprocess import codecs -from entropy.client.interfaces.client import Client -from entropy.const import etpConst, const_isunicode, etpSys, \ - const_convert_to_rawstring, const_mkstemp +from entropy.const import etpConst, etpSys, const_convert_to_rawstring, \ + const_mkstemp from entropy.output import brown, bold, darkred, red, teal, purple from entropy.i18n import _ import entropy.dep import entropy.tools -class Trigger: +class Trigger(object): """ Entropy Client Package installation phases trigger functions. @@ -162,8 +161,6 @@ class Trigger: """ functions = [] if self._spm is not None: - spm_class = self._entropy.Spm_class() - phases_map = spm_class.package_phases_map() append_setup = False if self._pkgdata['spm_phases'] != None: if "setup" in self._pkgdata['spm_phases']: diff --git a/lib/entropy/client/interfaces/package/actions/install.py b/lib/entropy/client/interfaces/package/actions/install.py index 9a2955583..4becae3d1 100644 --- a/lib/entropy/client/interfaces/package/actions/install.py +++ b/lib/entropy/client/interfaces/package/actions/install.py @@ -26,6 +26,7 @@ import entropy.dep import entropy.tools from ._manage import _PackageInstallRemoveAction +from ._triggers import Trigger from .. import _content as Content from .. import preservedlibs @@ -653,7 +654,8 @@ class _PackageInstallAction(_PackageInstallRemoveAction): self._entropy.set_title(xterm_title) data = self._get_install_trigger_data() - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "setup", data, @@ -682,7 +684,8 @@ class _PackageInstallAction(_PackageInstallRemoveAction): self._entropy.set_title(xterm_title) data = self._get_install_trigger_data() - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "preinstall", data, @@ -758,7 +761,7 @@ class _PackageInstallAction(_PackageInstallRemoveAction): def _get_install_trigger_data(self): """ - Get the metadata used during removal phases by Triggers. + Get the metadata used during removal phases by Trigger. """ repo = self._entropy.open_repository(self._repository_id) @@ -799,7 +802,8 @@ class _PackageInstallAction(_PackageInstallRemoveAction): ) self._entropy.set_title(xterm_title) - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "preremove", data, @@ -864,7 +868,8 @@ class _PackageInstallAction(_PackageInstallRemoveAction): ) self._entropy.set_title(xterm_title) - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "postremove", data, @@ -920,7 +925,8 @@ class _PackageInstallAction(_PackageInstallRemoveAction): self._entropy.set_title(xterm_title) data = self._get_install_trigger_data() - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "postinstall", data, diff --git a/lib/entropy/client/interfaces/package/actions/remove.py b/lib/entropy/client/interfaces/package/actions/remove.py index af0b18d8c..3ba4e2871 100644 --- a/lib/entropy/client/interfaces/package/actions/remove.py +++ b/lib/entropy/client/interfaces/package/actions/remove.py @@ -17,6 +17,7 @@ from entropy.output import blue, red, darkred, brown import entropy.dep from ._manage import _PackageInstallRemoveAction +from ._triggers import Trigger from .. import preservedlibs @@ -87,7 +88,8 @@ class _PackageRemoveAction(_PackageInstallRemoveAction): ) self._entropy.set_title(xterm_title) - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "preremove", data, @@ -234,7 +236,8 @@ class _PackageRemoveAction(_PackageInstallRemoveAction): ) self._entropy.set_title(xterm_title) - trigger = self._entropy.Triggers( + trigger = Trigger( + self._entropy, self.NAME, "postremove", data, diff --git a/lib/tests/client.py b/lib/tests/client.py index a8306a496..383b85b31 100644 --- a/lib/tests/client.py +++ b/lib/tests/client.py @@ -12,6 +12,7 @@ import time from entropy.client.interfaces import Client from entropy.client.interfaces.db import InstalledPackagesRepository +from entropy.client.interfaces.package.actions._triggers import Trigger from entropy.cache import EntropyCacher from entropy.const import etpConst, const_mkdtemp from entropy.output import set_mute @@ -233,8 +234,8 @@ class EntropyClientTest(unittest.TestCase): echo >/dev/null exit 42 """ % (etpConst['trigger_sh_interpreter'],) - trigger = self.Client.Triggers( - "install", 'postinstall', pkgdata, pkgdata) + trigger = Trigger( + self.Client, "install", 'postinstall', pkgdata, pkgdata) trigger.prepare() exit_st = trigger._do_trigger_call_ext_generic() trigger.kill() @@ -260,8 +261,8 @@ import os os.listdir(".") my_ext_status = 42 """ - trigger = self.Client.Triggers( - "install", 'postinstall', pkgdata, pkgdata) + trigger = Trigger( + self.Client, "install", 'postinstall', pkgdata, pkgdata) trigger.prepare() exit_st = trigger._do_trigger_call_ext_generic() finally: @@ -297,8 +298,8 @@ if stage == "postinstall": else: my_ext_status = 0 """ - trigger = self.Client.Triggers( - "install", 'postinstall', pkgdata, pkgdata) + trigger = Trigger( + self.Client, "install", 'postinstall', pkgdata, pkgdata) trigger.prepare() exit_st = trigger._do_trigger_call_ext_generic() finally: