Я использую swagger-springmvc и swagger-codegen для создания клиентской библиотеки Java для веб-службы RESTful. Я написал собственное расширение BasicJavaGenerator (см. Ниже) для переопределения имен пакетов и могу успешно генерировать файлы клиентской библиотеки. Сгенерированные "основные" файлы:
swagger-codegen/generated-code/java/pom.xml
swagger-codegen/generated-code/java/src/main/java/com/example/ApiApi.java
swagger-codegen/generated-code/java/src/main/java/com/example/model/*.java
Я не могу найти, как установить имя моего API, чтобы генератор кода переименовал ApiApi.java в MyProjectApi.java (например), как, кажется, делается в примерах, включенных в swagger-codegen. Я попытался посмотреть код генератора кода, чтобы переопределить имя api, а также попытался посмотреть как на спецификацию swagger json, так и на функциональность swagger springmvc, чтобы указать возможность установки имени.
Генератор кода:
package com.wordnik.swagger.codegen
import com.wordnik.swagger.codegen.BasicJavaGenerator
object MyJavaGenerator extends BasicJavaGenerator {
def main(args: Array[String]) = generateClient(args)
// api invoker package
override def invokerPackage = Some("com.example.api")
// package for models
override def modelPackage = Some("com.example.api.model")
// package for api classes
override def apiPackage = Some("com.example.api")
}