summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/Blocker.py
diff options
context:
space:
mode:
Diffstat (limited to 'pym/_emerge/Blocker.py')
-rw-r--r--pym/_emerge/Blocker.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/pym/_emerge/Blocker.py b/pym/_emerge/Blocker.py
new file mode 100644
index 000000000..3a9e59d49
--- /dev/null
+++ b/pym/_emerge/Blocker.py
@@ -0,0 +1,24 @@
+from _emerge.Task import Task
+try:
+ import portage
+except ImportError:
+ from os import path as osp
+ import sys
+ sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym"))
+ import portage
+class Blocker(Task):
+
+ __hash__ = Task.__hash__
+ __slots__ = ("root", "atom", "cp", "eapi", "satisfied")
+
+ def __init__(self, **kwargs):
+ Task.__init__(self, **kwargs)
+ self.cp = portage.dep_getkey(self.atom)
+
+ def _get_hash_key(self):
+ hash_key = getattr(self, "_hash_key", None)
+ if hash_key is None:
+ self._hash_key = \
+ ("blocks", self.root, self.atom, self.eapi)
+ return self._hash_key
+