我开发了一个rest-api客户端(java),以满足我的产品需求。我想使用我的rest api客户端使用基于yaml-file的swagger-codegen模块生成测试。
我已经扩展了DefaultCodegenConfig
&甚至尝试实现CodegenConfig
接口来构建我的自定义jar。我已经定制了api.mustache
和api_test.mustache
文件,并将它们传递到扩展DefaultCodegenConfig
的CustomCodeGen
的constructor
和processOpts()
方法中。
然而,我想使用自定义/新胡子我已经添加模板变量定制api.mustache
。
例如,如果参考标准api。它通常使用的模板变量是
- {{classname}}
- {{#operation}}
- {{#contents}}
- {{#parameters}}
等。
现在,我想引入一个新的模板变量,假设是{{custom_param}}
。现在我不清楚如何将这个新的模板变量与实现集成。
从这里发布的Mustache-Template-Variables来看,swagger-codegen不允许添加新的模板变量,也许我们被限制只能使用本页提到的变量。
那么,有没有办法让新的模板变量工作呢?
前一段时间我添加了uniqueItems
参数用于bean验证,因为它没有被引擎处理,即使它是实现的JSR的一部分。
所以我相信代码库需要更新以使用您自己的变量,这只有在您分叉代码时才有可能。
它帮助,这两个是PRs:
- 查询参数:https://github.com/swagger-api/swagger-codegen/pull/10154。
- 车身参数:https://github.com/swagger-api/swagger-codegen/pull/10490.