summaryrefslogtreecommitdiff
path: root/src/main/groovy/FlycheckAndroidJavaTask.groovy
diff options
context:
space:
mode:
authorJoel Klinghed <the_jk@opera.com>2017-12-05 13:29:35 +0100
committerJoel Klinghed <the_jk@opera.com>2017-12-05 13:29:35 +0100
commit26bcc8b2e79d655bffe17b323b845cb4f32cc220 (patch)
tree554523318ba28da7cf6039c316778326b20c3e05 /src/main/groovy/FlycheckAndroidJavaTask.groovy
parent6769baf559b6f33ec594843a4c36d5bda5a65db8 (diff)
Add support for non-experimental gradle plugin
Diffstat (limited to 'src/main/groovy/FlycheckAndroidJavaTask.groovy')
-rw-r--r--src/main/groovy/FlycheckAndroidJavaTask.groovy27
1 files changed, 22 insertions, 5 deletions
diff --git a/src/main/groovy/FlycheckAndroidJavaTask.groovy b/src/main/groovy/FlycheckAndroidJavaTask.groovy
index 4eadb85..d7ce2da 100644
--- a/src/main/groovy/FlycheckAndroidJavaTask.groovy
+++ b/src/main/groovy/FlycheckAndroidJavaTask.groovy
@@ -11,14 +11,31 @@ class FlycheckAndroidJavaTask extends DefaultTask {
@TaskAction
def action() {
- def buildTypes = project.extensions.buildTypes.names
- if (buildTypes.isEmpty()) buildTypes = ['debug', 'release']
- def flavors = project.extensions.flavors.names
+ def variants = []
+ def android = project.extensions.findByName('android')
+ if (android && android.class.simpleName == 'AppExtension_Decorated') {
+ variants = android.applicationVariants.collect { it.name }
+ } else if (android && android.class.simpleName == 'LibraryExtension_Decorated') {
+ variants = android.libraryVariants.collect { it.name }
+ } else {
+ def buildTypes = project.extensions.buildTypes.names
+ if (buildTypes.isEmpty()) buildTypes = ['debug', 'release']
+ def flavors = project.extensions.flavors.names
+ if (flavors.isEmpty()) {
+ variants = buildTypes
+ } else {
+ flavors.each { flavor ->
+ buildTypes.each { buildType ->
+ variants.add(flavor + buildType.capitalize())
+ }
+ }
+ }
+ }
+ variants = variants.sort()
def configurations = ['', 'UnitTest']
configurations.each { configuration ->
def name = 'compile'
- if (!flavors.isEmpty()) name += flavors.first().capitalize()
- if (!buildTypes.isEmpty()) name += buildTypes.first().capitalize()
+ name += variants.first().capitalize()
name += configuration.capitalize() + 'JavaWithJavac'
def compile = project.tasks.findByName(name)
if (compile) {