def build_usage_and_options(): from infi.projector.plugins import plugin_repository usage = '' options = '' for plugin in plugin_repository.get_all_plugins(): docopt_string = plugin.get_docopt_string() plugin_usage, plugin_options = parse_docopt_string(docopt_string) usage = '\n'.join([usage, plugin_usage]) options = '\n'.join([options, plugin_options]) options = sort_options(options) return usage, options
def build_usage_and_options(): from infi.projector.plugins import plugin_repository usage = '' options = '' for plugin in plugin_repository.get_all_plugins(): docopt_string = plugin.get_docopt_string() plugin_usage, plugin_options = parse_docopt_string(docopt_string) usage = '\n'.join([usage, plugin_usage]) options = '\n'.join([options, plugin_options]) options = sort_options(options) return usage, options
def parse_commandline_arguments(argv): from infi.projector.plugins import plugin_repository from docopt import docopt doc = get_commandline_doc() arguments = dict(docopt(doc, argv=argv, version=get_version())) if arguments.get('-v'): print get_version() return plugins = {plugin.get_command_name():plugin for plugin in plugin_repository.get_all_plugins()} [selected_plugin] = [value for key, value in plugins.items() if arguments.get(key)] append_default_arguments_from_configuration_files(arguments) selected_plugin.parse_commandline_arguments(arguments)
def parse_commandline_arguments(argv): from infi.projector.plugins import plugin_repository from docopt import docopt doc = get_commandline_doc() arguments = dict(docopt(doc, argv=argv, version=get_version())) if arguments.get('-v'): print get_version() return plugins = { plugin.get_command_name(): plugin for plugin in plugin_repository.get_all_plugins() } [selected_plugin ] = [value for key, value in plugins.items() if arguments.get(key)] append_default_arguments_from_configuration_files(arguments) selected_plugin.parse_commandline_arguments(arguments)
def parse_commandline_arguments(argv): from infi.projector.plugins import plugin_repository from docopt import docopt doc = get_commandline_doc() arguments = dict(docopt(doc, argv=argv, version=get_version())) if arguments.get('-v'): print(get_version()) return selected_plugins = [plugin for plugin in plugin_repository.get_all_plugins() if arguments.get(plugin.get_command_name())] append_default_arguments_from_configuration_files(arguments) if not selected_plugins: logger.error("No matching plugin found") return if not any(selected_plugin.parse_commandline_arguments(arguments) for selected_plugin in selected_plugins): logger.error("No matching method found") return
def parse_commandline_arguments(argv): from infi.projector.plugins import plugin_repository from docopt import docopt doc = get_commandline_doc() arguments = dict(docopt(doc, argv=argv, version=get_version())) if arguments.get('-v'): print(get_version()) return selected_plugins = [ plugin for plugin in plugin_repository.get_all_plugins() if arguments.get(plugin.get_command_name()) ] append_default_arguments_from_configuration_files(arguments) if not selected_plugins: logger.error("No matching plugin found") return if not any( selected_plugin.parse_commandline_arguments(arguments) for selected_plugin in selected_plugins): logger.error("No matching method found") return