def nodes(self): nodes = OrderedDict() linemap = {} for line in self.section.nodes: nodename, node = find_obj(line, True) if node in linemap: raise ConfigError( self.section, 'nodes', '%s already listed as %s' % (line, linemap[node])) linemap[node] = line if nodename in nodes: raise ConfigError(self.section, 'nodes', 'duplicate name %s' % (nodename, )) nodes[nodename] = node return nodes
def nodes(self): nodes = OrderedDict() linemap = {} for line in self.section.nodes: try: nodename, node = utils.find_obj(line, True) except AttributeError: raise ConfigError(self.section, 'nodes', 'Cannot find node %s' % line) if node in linemap: raise ConfigError(self.section, 'nodes', '%s already listed as %s' % (line, linemap[node])) linemap[node] = line if nodename in nodes: raise ConfigError(self.section, 'nodes', 'duplicate name %s' % (nodename,)) if not node.schema: raise ConfigError(self.section, 'nodes', '%s does not define a schema!' % (line,)) nodes[nodename] = node return nodes
def convert(self, value, param, ctx): return find_obj(value)
def scanner(self): return find_obj(self.section.scanner)