Compare commits

...

6 Commits

1 changed files with 26 additions and 23 deletions

View File

@ -1,3 +1,5 @@
final File generatedModelsDirectory = new File("${project.buildDir}/generated/source/models")
repositories { repositories {
maven { maven {
url 'https://dl.bintray.com/touchin/touchin-tools' url 'https://dl.bintray.com/touchin/touchin-tools'
@ -15,28 +17,29 @@ dependencies {
apigenerator 'ru.touchin:api-generator:1.4.0-beta1' apigenerator 'ru.touchin:api-generator:1.4.0-beta1'
} }
android.applicationVariants.all { variant -> android {
final File generatedModelsDirectory = new File("${project.buildDir}/generated/source/models/${variant.dirName}") sourceSets {
main.java.srcDirs += generatedModelsDirectory
def generateJsonModelsTask = tasks.create("apiGenerator${variant.name}") doLast {
javaexec {
main = "-jar"
workingDir = file("${rootDir}")
args = [
configurations.apigenerator.asPath,
"generate-client-code",
"--output-language",
"JAVA",
"--specification-path",
rootProject.extensions.findByName("pathToApiSchemes"),
"--output-path",
"${generatedModelsDirectory.path}",
"--package-name",
"${rootProject.extensions.findByName("applicationId") ?: applicationId}"
]
}
} }
generateJsonModelsTask.description = 'Generates Java classes for JSON models'
variant.registerJavaGeneratingTask generateJsonModelsTask, generatedModelsDirectory
} }
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'