plugins { id 'org.hidetake.swagger.generator' id 'java-library' } apply from: '../../gradle/coverage/java-coverage.gradle' dependencies { // Dependencies for open api implementation externalDependency.reflections implementation externalDependency.springCore implementation externalDependency.springWeb implementation externalDependency.springWebMVC implementation externalDependency.springBeans implementation externalDependency.springContext implementation externalDependency.antlr4Runtime implementation externalDependency.antlr4 implementation externalDependency.servletApi implementation externalDependency.jakartaValidation implementation externalDependency.jakartaAnnotationApi implementation externalDependency.jacksonDataBind implementation externalDependency.slf4jApi // End of dependencies implementation externalDependency.swaggerAnnotations swaggerCodegen externalDependency.swaggerCli testImplementation externalDependency.assertJ } tasks.register('generateOpenApiPojos', GenerateSwaggerCode) { it.setInputFile( file( "$projectDir/src/main/resources/schema-registry-open-api-v7.4.0.yaml" ) ) it.setOutputDir(file("$projectDir/generated")) it.setLanguage("spring") it.setComponents([models: true, apis: true, apiTests: false]) it.setTemplateDir(file("$projectDir/src/main/resources/JavaSpring")) it.setAdditionalProperties([ "group-id" : "io.datahubproject", "dateLibrary" : "java8", "java11" : "true", "modelPropertyNaming" : "original", "modelPackage" : "io.datahubproject.schema-registry.openapi.generated"] as Map) } sourceSets.main.java.srcDirs "${generateOpenApiPojos.outputDir}/src/main/java" sourceSets.main.resources.srcDir "${generateOpenApiPojos.outputDir}/src/main/resources"