1
0
Fork 0
mirror of https://github.com/ethauvin/kobalt.git synced 2025-04-27 00:38:11 -07:00

Move a few methods in BaseJvmPlugin.

This commit is contained in:
Cedric Beust 2016-06-24 02:49:17 -08:00
parent 364c696a55
commit c06e92b679
4 changed files with 14 additions and 26 deletions

View file

@ -8,5 +8,5 @@ interface ISimpleAffinity<T> : IAffinity {
* @return an integer indicating the affinity of your actor. The actor that returns * @return an integer indicating the affinity of your actor. The actor that returns
* the highest affinity gets selected. * the highest affinity gets selected.
*/ */
fun affinity(arg: T) : Int fun affinity(project: T) : Int
} }

View file

@ -1,9 +1,7 @@
package com.beust.kobalt.internal package com.beust.kobalt.internal
import com.beust.kobalt.api.BasePlugin import com.beust.kobalt.api.*
import com.beust.kobalt.api.ConfigActor import com.beust.kobalt.misc.KFiles
import com.beust.kobalt.api.ICompilerFlagContributor
import com.beust.kobalt.api.IConfigActor
/** /**
* Base class for JVM language plug-ins. * Base class for JVM language plug-ins.
@ -23,4 +21,12 @@ abstract class BaseJvmPlugin<T>(open val configActor: ConfigActor<T>) :
override val flagPriority = FLAG_CONTRIBUTOR_PRIORITY override val flagPriority = FLAG_CONTRIBUTOR_PRIORITY
override fun accept(project: Project) = hasSourceFiles(project)
// IBuildConfigContributor
private fun hasSourceFiles(project: Project)
= KFiles.findSourceFiles(project.directory, project.sourceDirectories, listOf("java")).size > 0
fun affinity(project: Project) = if (hasSourceFiles(project)) 1 else 0
} }

View file

@ -6,7 +6,6 @@ import com.beust.kobalt.api.*
import com.beust.kobalt.api.annotation.Directive import com.beust.kobalt.api.annotation.Directive
import com.beust.kobalt.internal.BaseJvmPlugin import com.beust.kobalt.internal.BaseJvmPlugin
import com.beust.kobalt.internal.JvmCompilerPlugin import com.beust.kobalt.internal.JvmCompilerPlugin
import com.beust.kobalt.misc.KFiles
import com.beust.kobalt.misc.warn import com.beust.kobalt.misc.warn
import java.io.File import java.io.File
import javax.inject.Inject import javax.inject.Inject
@ -16,21 +15,13 @@ import javax.inject.Singleton
class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler, override val configActor: ConfigActor<JavaConfig>) class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler, override val configActor: ConfigActor<JavaConfig>)
: BaseJvmPlugin<JavaConfig>(configActor), IDocContributor, ICompilerContributor, : BaseJvmPlugin<JavaConfig>(configActor), IDocContributor, ICompilerContributor,
ITestSourceDirectoryContributor, IBuildConfigContributor { ITestSourceDirectoryContributor, IBuildConfigContributor {
companion object { companion object {
const val PLUGIN_NAME = "Java" const val PLUGIN_NAME = "Java"
} }
override val name = PLUGIN_NAME override val name = PLUGIN_NAME
override fun accept(project: Project) = hasSourceFiles(project)
// IBuildConfigContributor
private fun hasSourceFiles(project: Project)
= KFiles.findSourceFiles(project.directory, project.sourceDirectories, listOf("java")).size > 0
override fun affinity(project: Project) = if (hasSourceFiles(project)) 1 else 0
// IDocContributor // IDocContributor
override fun affinity(project: Project, context: KobaltContext) = override fun affinity(project: Project, context: KobaltContext) =
if (accept(project)) 1 else 0 if (accept(project)) 1 else 0

View file

@ -10,7 +10,6 @@ import com.beust.kobalt.internal.KobaltSettings
import com.beust.kobalt.internal.KotlinJarFiles import com.beust.kobalt.internal.KotlinJarFiles
import com.beust.kobalt.maven.DependencyManager import com.beust.kobalt.maven.DependencyManager
import com.beust.kobalt.maven.dependency.FileDependency import com.beust.kobalt.maven.dependency.FileDependency
import com.beust.kobalt.misc.KFiles
import com.beust.kobalt.misc.KobaltExecutors import com.beust.kobalt.misc.KobaltExecutors
import com.beust.kobalt.misc.log import com.beust.kobalt.misc.log
import com.beust.kobalt.misc.warn import com.beust.kobalt.misc.warn
@ -21,7 +20,8 @@ import javax.inject.Singleton
class KotlinPlugin @Inject constructor(val executors: KobaltExecutors, val dependencyManager: DependencyManager, class KotlinPlugin @Inject constructor(val executors: KobaltExecutors, val dependencyManager: DependencyManager,
val settings: KobaltSettings, override val configActor: ConfigActor<KotlinConfig>, val settings: KobaltSettings, override val configActor: ConfigActor<KotlinConfig>,
val kotlinJarFiles: KotlinJarFiles) val kotlinJarFiles: KotlinJarFiles)
: BaseJvmPlugin<KotlinConfig>(configActor), IDocContributor, IClasspathContributor, ICompilerContributor, IBuildConfigContributor { : BaseJvmPlugin<KotlinConfig>(configActor), IDocContributor, IClasspathContributor, ICompilerContributor,
IBuildConfigContributor {
companion object { companion object {
const val PLUGIN_NAME = "Kotlin" const val PLUGIN_NAME = "Kotlin"
@ -29,15 +29,6 @@ class KotlinPlugin @Inject constructor(val executors: KobaltExecutors, val depen
override val name = PLUGIN_NAME override val name = PLUGIN_NAME
override fun accept(project: Project) = hasSourceFiles(project)
// IBuildConfigContributor
private fun hasSourceFiles(project: Project)
= KFiles.findSourceFiles(project.directory, project.sourceDirectories, listOf("kt")).size > 0
override fun affinity(project: Project) = if (hasSourceFiles(project)) 1 else 0
// IDocContributor // IDocContributor
override fun affinity(project: Project, context: KobaltContext) = override fun affinity(project: Project, context: KobaltContext) =
if (project.sourceDirectories.any { it.contains("kotlin") }) 2 else 0 if (project.sourceDirectories.any { it.contains("kotlin") }) 2 else 0