def _parse_options()

in releasedocmaker/src/main/python/releasedocmaker/jira.py [0:0]


    def _parse_options(self, options):
        """Parse options from optparse."""

        if options.lint is None or not options.lint:
            return
        self.enabled = True

        # Valid filter specifications are
        # self._valid_filters, negations, and "all"
        valid_list = self._valid_filters
        valid_list += ["-" + v for v in valid_list]
        valid_list += ["all"]
        valid = set(valid_list)

        enabled = []
        disabled = []

        for opt in options.lint:
            for token in opt.split(","):
                if token not in valid:
                    logging.error(
                        "Unknown lint filter '%s', valid options are: %s",
                        token, ', '.join(v for v in sorted(valid)))
                    sys.exit(1)
                if token.startswith("-"):
                    disabled.append(token[1:])
                else:
                    enabled.append(token)

        for eopt in enabled:
            if eopt == "all":
                for filt in self._valid_filters:
                    self._filters[filt] = True
            else:
                self._filters[eopt] = True
        for disopt in disabled:
            self._filters[disopt] = False