def parse(self, s): out = [] s = s.replace('\n', ' ') s = s.replace(',', ' ') items = [ item.replace(' ', '%20') for item in shlex.split(s) ] tmp = [] for item in items: if item.startswith('glob:'): thisglob = item.replace('glob:', '') tmp.extend(read_in_items_from_dot_dir(thisglob)) continue tmp.append(item) for url in super(UrlListOption, self).parse(' '.join(tmp)): out.append(self._urloption.parse(url)) return out
def parse(self, s): """Converts a string from the config file to a workable list, parses globdir: paths as foo.d-style dirs Commas and spaces are used as separators for the list """ # we need to allow for the '\n[whitespace]' continuation - easier # to sub the \n with a space and then read the lines s = s.replace('\n', ' ') s = s.replace(',', ' ') results = [] for item in s.split(): if item.startswith('glob:'): thisglob = item.replace('glob:', '') results.extend(read_in_items_from_dot_dir(thisglob)) continue results.append(item) return results
def parse(self, s): """Convert a string from the config file to a workable list, parses globdir: paths as foo.d-style dirs. :param s: The string to be converted to a list. Commas and whitespace are used as separators for the list :return: *s* converted to a list """ # we need to allow for the '\n[whitespace]' continuation - easier # to sub the \n with a space and then read the lines s = s.replace("\n", " ") s = s.replace(",", " ") results = [] for item in s.split(): if item.startswith("glob:"): thisglob = item.replace("glob:", "") results.extend(read_in_items_from_dot_dir(thisglob)) continue results.append(item) return results
def parse(self, s): """Parse a string containing multiple urls into a list, and ensure that they are in a scheme that can be used. :param s: the string to parse :return: a list of strings containing the urls in *s* :raises: :class:`ValueError` if there is an error parsing the urls """ out = [] s = s.replace('\n', ' ') s = s.replace(',', ' ') items = [item.replace(' ', '%20') for item in shlex.split(s)] tmp = [] for item in items: if item.startswith('glob:'): thisglob = item.replace('glob:', '') tmp.extend(read_in_items_from_dot_dir(thisglob)) continue tmp.append(item) for url in super(UrlListOption, self).parse(' '.join(tmp)): out.append(self._urloption.parse(url)) return out
def parse(self, s): """Parse a string containing multiple urls into a list, and ensure that they are in a scheme that can be used. :param s: the string to parse :return: a list of strings containing the urls in *s* :raises: :class:`ValueError` if there is an error parsing the urls """ out = [] s = s.replace('\n', ' ') s = s.replace(',', ' ') items = [ item.replace(' ', '%20') for item in shlex.split(s) ] tmp = [] for item in items: if item.startswith('glob:'): thisglob = item.replace('glob:', '') tmp.extend(read_in_items_from_dot_dir(thisglob)) continue tmp.append(item) for url in super(UrlListOption, self).parse(' '.join(tmp)): out.append(self._urloption.parse(url)) return out