Package entropy :: Package client :: Package interfaces :: Module loaders

Source Code for Module entropy.client.interfaces.loaders

 1  # -*- coding: utf-8 -*- 
 2  """ 
 3   
 4      @author: Fabio Erculiani <lxnay@sabayonlinux.org> 
 5      @contact: lxnay@sabayonlinux.org 
 6      @copyright: Fabio Erculiani 
 7      @license: GPL-2 
 8   
 9      B{Entropy Package Manager Client Instance Loaders Interface}. 
10   
11  """ 
12  from __future__ import with_statement 
13  from entropy.spm.plugins.factory import get_default_instance as get_spm 
14  from entropy.const import * 
15  from entropy.exceptions import * 
16   
17 -class LoadersMixin:
18 19 __QA_cache = {} 20 __security_cache = {} 21 __spm_cache = {}
22 - def __init__(self):
23 from entropy.client.interfaces.client import Client 24 from entropy.client.interfaces.trigger import Trigger 25 from entropy.client.interfaces.repository import Repository 26 from entropy.client.interfaces.package import Package 27 self.__PackageLoader = Package 28 self.__RepositoryLoader = Repository 29 self.__TriggerLoader = Trigger
30
31 - def closeAllQA(self):
32 self.__QA_cache.clear()
33
34 - def closeAllSecurity(self):
36
37 - def Security(self):
38 chroot = etpConst['systemroot'] 39 cached = self.__security_cache.get(chroot) 40 if cached != None: 41 return cached 42 from entropy.security import SecurityInterface 43 cached = SecurityInterface(self) 44 self.__security_cache[chroot] = cached 45 return cached
46
47 - def QA(self):
48 chroot = etpConst['systemroot'] 49 cached = self.__QA_cache.get(chroot) 50 if cached != None: 51 return cached 52 from entropy.qa import QAInterface 53 cached = QAInterface(self) 54 self.__QA_cache[chroot] = cached 55 return cached
56
57 - def Triggers(self, *args, **kwargs):
58 return self.__TriggerLoader(self, *args, **kwargs)
59
60 - def Repositories(self, reponames = [], forceUpdate = False, noEquoCheck = False, fetchSecurity = True):
61 return self.__RepositoryLoader(self, reponames = reponames, 62 forceUpdate = forceUpdate, noEquoCheck = noEquoCheck, 63 fetchSecurity = fetchSecurity)
64
65 - def Spm(self):
66 myroot = etpConst['systemroot'] 67 cached = self.__spm_cache.get(myroot) 68 if cached is not None: 69 return cached 70 spm = get_spm(self) 71 self.__spm_cache[myroot] = spm 72 return spm
73
74 - def Package(self):
75 return self.__PackageLoader(self)
76