some minor fixes...

git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@1229 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2006-05-26 20:21:37 +00:00
parent 5f5a200ce1
commit c7fb96d549
2 changed files with 8 additions and 8 deletions

View file

@ -44,24 +44,24 @@ class Knowing(object):
del self._knowledge[obj]
del obj._knowers[self]
def getMissingKnowledge(self, position):
knowledge = self.getKnowledge()
def getMissingKnowledge(self, profile):
knowledge = list(self.getKnowledge())
missing = []
toCheck = [k for k in position.getRequirements() if k not in knowledge]
toCheck = [k for k in profile.getRequirements() if k not in knowledge]
while toCheck:
k = toCheck.pop()
missing.insert(0, k)
for d in k.getDependencies():
if d in knowledge or k in toCheck:
if d in knowledge or d in toCheck:
continue
if d in missing:
# TODO: rearrange missing, but care for cycles...
# TODO: rearrange missing, but care for cycles...
continue
toCheck.append(d)
return tuple(missing)
def getProvidersNeeded(self, position):
def getProvidersNeeded(self, profile):
return ((k, k.getProviders())
for k in self.getMissingKnowledge(position))
for k in self.getMissingKnowledge(profile))

View file

@ -40,7 +40,7 @@ class KnowledgeProvider(object):
self._providedKnowledge[obj] = True
obj._providers.add(self)
def removeDependency(self, obj):
def removeProvidedKnowledge(self, obj):
del self._providedKnowledge[obj]
del obj._providers[self]