BuildScripts/gradle/apiGenerator.gradle

46 lines
1.1 KiB
Groovy

repositories {
maven {
url 'https://dl.bintray.com/touchin/touchin-tools'
metadataSources {
artifact()
}
}
}
configurations {
apigenerator
}
dependencies {
apigenerator 'ru.touchin:api-generator:1.4.0-beta1'
}
android {
sourceSets {
main.java.srcDirs += "build/generated/source/models"
}
}
final File generatedModelsDirectory = new File("${project.buildDir}/generated/source/models")
def generateJsonModelsTask = tasks.create("apiGenerator") doLast {
javaexec {
main = "-jar"
workingDir = file("${rootDir}")
args = [
configurations.apigenerator.asPath,
"generate-client-code",
"--output-language",
"KOTLIN",
"--specification-path",
rootProject.extensions.findByName("pathToApiSchemes"),
"--output-path",
"${generatedModelsDirectory.path}",
"--package-name",
"${rootProject.extensions.findByName("applicationId")}"
]
}
}
generateJsonModelsTask.description = 'Generates Java classes for JSON models'