def _method_code(method_name, method, url, args, kwargs, url_kw, defaults, success_code, keywords, doc_string, keyword_map): params_kw = set(args) - (set(defaults) | set(url_kw) | {"self"}) - IGNORE_KW url_kw = set(url_kw) - IGNORE_KW defaults = {k: v if type(v) is not str else "'%s'" % v for k, v in defaults.items()} args = [arg for arg in args if arg not in {common.KW_HEADERS, common.KW_CREDENTIALS, common.KW_ENFORCER}] assert not ((common.KW_FILE in args) and (common.KW_LIST in args)), \ "Can only have {} or {} in method args".format(common.KW_FILE, common.KW_LIST) if doc_string is not None: # Fix doc string indentation. doc_string = '\n '.join(doc_string.split('\n')) for key, value in kwargs.iteritems(): if isinstance(value, six.string_types): kwargs[key] = '"{}"'.format(value) return METHOD_TEMPLATE.render( # pylint: disable=no-member method_name=names.to_variable_name(method_name), method=method, url=url, args=args, kwargs=kwargs, url_kw=url_kw, params_kw=params_kw, defaults=defaults, success_code=success_code, kw_file=common.KW_FILE, kw_list=common.KW_LIST, keywords=keywords, doc_string=doc_string, keyword_map=keyword_map, )
def route_cli_commands_map(cls): mapping = {} for route_method in cls.iter_route_methods(): method_name = names.to_variable_name(route_method.__name__) command_name = route_method.cli_command_name if command_name is False: mapping[method_name] = False elif route_method.client_methods: for name in route_method.client_methods: mapping[name] = names.to_command(name) else: mapping[method_name] = command_name or names.to_command(route_method.__name__) return mapping
def client_variable_name(cls): return cls.CLIENT_VAR_NAME or names.to_variable_name(cls.name())
def _package_tuple(package): """ :return: a tuple of <variable_name>, <class_name>, <path> """ return names.to_variable_name(package.class_name), package.class_name, package.path
def client_variable_name(cls): return names.to_variable_name(cls.name())
def _package_tuple(package): """ :return: a tuple of <variable_name>, <class_name>, <path> """ return names.to_variable_name( package.class_name), package.class_name, package.path
def _parser_name(self): return names.to_variable_name(self.name)