def scanJoin(self, root, modulesToApply=None): modMap = {} modCount = 0 jobs = [] while not self.empty(): task = self.get() if modulesToApply != None: if not task[1][0] in modulesToApply: self.task_done() continue try: modMap[task[1][0]] += 1 except KeyError: modMap[task[1][0]] = 1 job2 = (self.task_done_scan, ( root, task[1][0], )) job = (task, job2) jobs.append(job) modCount += 1 if modCount: self.displayItem(root, modCount, modMap) for job in jobs: sched.enqueue(job) self.join() self.refresh()
def add(self, cmd, args, exec_flags, enqueued = False): mod = self.loader.modules[cmd] proc = None if "single" in mod.flags: proc = self.processusManager.singleCreate(mod, None, exec_flags) else: proc = self.processusManager.create(mod, None, exec_flags) if not "thread" in exec_flags: try : if "gui" in proc.mod.flags and not "console" in proc.mod.flags: print "This script is gui only" self.processusManager.remove(proc) proc.event.set() return proc except AttributeError: pass if not isinstance(args, Config): try: args = mod.conf.generate(args) except: pass if enqueued: proc.launch(args) else: sched.enqueue(((proc.launch, args),) ) return proc
def scanJoin(self, root): total = self.qsize() self.displayItem(root, total) self.total = total while not self.empty(): task = self.get() job2 = (self.task_done_scan, (root, )) jobs = (task, job2) sched.enqueue(jobs) self.join() self.refresh()
def scanJoin(self, root): total = self.qsize() self.displayItem(root, total) self.total = total while not self.empty(): task = self.get() job2 = (self.task_done_scan, (root,)) jobs = (task, job2) sched.enqueue(jobs) self.join() self.refresh()
def scanJoin(self, root, modulesToApply = None): modMap = {} modCount = 0 jobs = [] while not self.empty(): task = self.get() moduleName = task[1][0] if modulesToApply != None: if not module in modulesToApply: self.task_done() continue module = self.loader.modules[moduleName] try: filterText = module.scanFilter if filterText != '': arguments = task[1][1] nodeArguments = module.conf.argumentsByType(typeId.Node) if len(nodeArguments) == 1: node = arguments[nodeArguments[0].name()].value() filter = Filter('') filter.compile(str(filterText)) filter.process(node) matches = filter.matchedNodes() if not len(matches): self.task_done() continue except : #filter can throw pass try : modMap[task[1][0]] += 1 except KeyError: modMap[task[1][0]] = 1 job2 = (self.task_done_scan, (root, task[1][0],)) job = (task, job2) jobs.append(job) modCount += 1 if modCount: self.displayItem(root, modCount, modMap) for job in jobs: sched.enqueue(job) self.join() self.refresh()
def add(self, cmd, args, exec_flags, enqueued = False): mod = self.loader.modules[cmd] proc = None if "single" in mod.flags: proc = self.processusManager.singleCreate(mod, None, exec_flags) else: proc = self.processusManager.create(mod, None, exec_flags) if not "thread" in exec_flags: try : if "gui" in proc.mod.flags and not "console" in proc.mod.flags: print "This script is gui only" self.processusManager.remove(proc) proc.event.set() return proc except AttributeError: pass if enqueued: proc.launch(args) else: sched.enqueue(((proc.launch, args),) ) return proc
def scanJoin(self, root, modulesToApply = None): modMap = {} modCount = 0 jobs = [] while not self.empty(): task = self.get() if modulesToApply != None: if not task[1][0] in modulesToApply: self.task_done() continue try : modMap[task[1][0]] += 1 except KeyError: modMap[task[1][0]] = 1 job2 = (self.task_done_scan, (root, task[1][0],)) job = (task, job2) jobs.append(job) modCount += 1 if modCount: self.displayItem(root, modCount, modMap) for job in jobs: sched.enqueue(job) self.join() self.refresh()