mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-27 08:38:13 -07:00
IBuildConfigContributor.
Step toward removing javaProject/kotlinProject.
This commit is contained in:
parent
08f5fcd04b
commit
691e59f0cb
10 changed files with 63 additions and 27 deletions
|
@ -1,10 +1,8 @@
|
|||
package com.beust.kobalt.app.java
|
||||
|
||||
import com.beust.kobalt.app.BuildGenerator
|
||||
import com.beust.kobalt.plugin.java.JavaProjectInfo
|
||||
import com.google.inject.Inject
|
||||
|
||||
public class JavaBuildGenerator @Inject constructor (val projectInfo: JavaProjectInfo) : BuildGenerator() {
|
||||
public class JavaBuildGenerator: BuildGenerator() {
|
||||
override val defaultSourceDirectories = hashSetOf("src/main/java")
|
||||
override val defaultTestDirectories = hashSetOf("src/test/java")
|
||||
override val directive = "javaProject"
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
package com.beust.kobalt.app.kotlin
|
||||
|
||||
import com.beust.kobalt.app.BuildGenerator
|
||||
import com.beust.kobalt.plugin.kotlin.KotlinProjectInfo
|
||||
import com.google.inject.Inject
|
||||
|
||||
public class KotlinBuildGenerator @Inject constructor (val projectInfo: KotlinProjectInfo) : BuildGenerator() {
|
||||
public class KotlinBuildGenerator : BuildGenerator() {
|
||||
override val defaultSourceDirectories = hashSetOf("src/main/kotlin")
|
||||
override val defaultTestDirectories = hashSetOf("src/test/kotlin")
|
||||
override val directive = "kotlinProject"
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.beust.kobalt.plugin.java
|
||||
|
||||
import com.beust.kobalt.TaskResult
|
||||
import com.beust.kobalt.Variant
|
||||
import com.beust.kobalt.api.*
|
||||
import com.beust.kobalt.api.annotation.Directive
|
||||
import com.beust.kobalt.internal.BaseJvmPlugin
|
||||
|
@ -11,7 +12,8 @@ import javax.inject.Singleton
|
|||
|
||||
@Singleton
|
||||
class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler)
|
||||
: BaseJvmPlugin<JavaConfig>(), IDocContributor, ICompilerContributor, ITestSourceDirectoryContributor {
|
||||
: BaseJvmPlugin<JavaConfig>(), IDocContributor, ICompilerContributor, ITestSourceDirectoryContributor,
|
||||
IBuildConfigContributor {
|
||||
companion object {
|
||||
const val PLUGIN_NAME = "Java"
|
||||
}
|
||||
|
@ -57,6 +59,17 @@ class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler)
|
|||
override fun testSourceDirectoriesFor(project: Project, context: KobaltContext)
|
||||
= project.sourceDirectoriesTest.map { File(it) }.toList()
|
||||
|
||||
// IBuildConfigContributor
|
||||
override fun affinity(project: Project): Int {
|
||||
return if (project.projectExtra.suffixesFound.contains("java")) 1 else 0
|
||||
}
|
||||
|
||||
override fun generateBuildConfig(project: Project, context: KobaltContext, packageName: String,
|
||||
variant: Variant, buildConfigs: List<BuildConfig>): String {
|
||||
return JavaProjectInfo().generateBuildConfig(project, context, packageName, variant, buildConfigs)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Directive
|
||||
|
|
|
@ -24,8 +24,7 @@ public class JavaProject(
|
|||
override var dependencies: Dependencies? = null,
|
||||
@Directive
|
||||
override var packaging: String? = null)
|
||||
: Project(name, version, directory, buildDirectory, group, artifactId, packaging, dependencies,
|
||||
".java", projectInfo = JavaProjectInfo()) {
|
||||
: Project(name, version, directory, buildDirectory, group, artifactId, packaging, dependencies, ".java") {
|
||||
|
||||
override public fun toString() = toString("JavaProject", "name", name)
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.beust.kobalt.plugin.kotlin
|
||||
|
||||
import com.beust.kobalt.TaskResult
|
||||
import com.beust.kobalt.Variant
|
||||
import com.beust.kobalt.api.*
|
||||
import com.beust.kobalt.api.annotation.Directive
|
||||
import com.beust.kobalt.internal.BaseJvmPlugin
|
||||
|
@ -15,7 +16,8 @@ import javax.inject.Singleton
|
|||
|
||||
@Singleton
|
||||
class KotlinPlugin @Inject constructor(val executors: KobaltExecutors)
|
||||
: BaseJvmPlugin<KotlinConfig>(), IDocContributor, IClasspathContributor, ICompilerContributor {
|
||||
: BaseJvmPlugin<KotlinConfig>(), IDocContributor, IClasspathContributor, ICompilerContributor,
|
||||
IBuildConfigContributor {
|
||||
|
||||
companion object {
|
||||
const val PLUGIN_NAME = "Kotlin"
|
||||
|
@ -122,6 +124,15 @@ class KotlinPlugin @Inject constructor(val executors: KobaltExecutors)
|
|||
log(2, "${project.name}: $s")
|
||||
}
|
||||
|
||||
// IBuildConfigContributor
|
||||
override fun affinity(project: Project): Int {
|
||||
return if (project.projectExtra.suffixesFound.contains("kotlin")) 2 else 0
|
||||
}
|
||||
|
||||
override fun generateBuildConfig(project: Project, context: KobaltContext, packageName: String,
|
||||
variant: Variant, buildConfigs: List<BuildConfig>): String {
|
||||
return KotlinProjectInfo().generateBuildConfig(project, context, packageName, variant, buildConfigs)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -24,8 +24,7 @@ public class KotlinProject(
|
|||
override var dependencies: Dependencies? = null,
|
||||
@Directive
|
||||
override var packaging: String? = null)
|
||||
: Project(name, version, directory, buildDirectory, group, artifactId, packaging, dependencies, ".kt",
|
||||
projectInfo = KotlinProjectInfo()) {
|
||||
: Project(name, version, directory, buildDirectory, group, artifactId, packaging, dependencies, ".kt") {
|
||||
|
||||
override public fun toString() = toString("KotlinProject", "name", name)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue