gen_openapispec.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:rapier 作者: apigee-labs 项目源码 文件源码
def main(args):
    generator = OASGenerator()
    usage = 'usage: gen_openapispec.py [-m, --yaml-merge] [-i, --include-impl] [-t --suppress-templates] filename'
    try:
        opts, args = getopt.getopt(sys.argv[1:], 'mit', ['yaml-merge', 'include-impl', 'suppress-templates'])
    except getopt.GetoptError as err:
        sys.exit(str(err) + '\n' + usage)
    if not len(args) == 1:
        sys.exit(usage)        
    generator.set_opts(opts)
    Dumper = CustomAnchorDumper
    opts_keys = [k for k,v in opts]
    if False: #'--yaml-alias' not in opts_keys and '-m' not in opts_keys:
        Dumper.ignore_aliases = lambda self, data: True
    Dumper.add_representer(PresortedOrderedDict, yaml.representer.SafeRepresenter.represent_dict)
    Dumper.add_representer(validate_rapier.unicode_node, yaml.representer.SafeRepresenter.represent_unicode)
    Dumper.add_representer(validate_rapier.list_node, yaml.representer.SafeRepresenter.represent_list)
    openAPI_spec = generator.openAPI_spec_from_rapier(*args)
    openAPI_spec_yaml = yaml.dump(openAPI_spec, default_flow_style=False, Dumper=Dumper)
    openAPI_spec_yaml = str.replace(openAPI_spec_yaml, "'<<':", '<<:')
    print openAPI_spec_yaml
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号