From c2312a8854ea897ac44cb890d0901f9eba123c19 Mon Sep 17 00:00:00 2001 From: Cedric Beust Date: Wed, 10 Feb 2016 21:42:29 +0400 Subject: [PATCH] Make IClasspathContributor receive a Context. --- .../kotlin/com/beust/kobalt/api/IClasspathContributor.kt | 4 +--- .../main/kotlin/com/beust/kobalt/maven/DependencyManager.kt | 2 +- .../kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt | 5 +++-- .../kotlin/com/beust/kobalt/plugin/packaging/WarGenerator.kt | 2 +- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/api/IClasspathContributor.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/api/IClasspathContributor.kt index 1474d342..ce9afc39 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/api/IClasspathContributor.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/api/IClasspathContributor.kt @@ -1,12 +1,10 @@ package com.beust.kobalt.api -import com.beust.kobalt.api.IClasspathDependency - /** * Plugins that export classpath entries need to implement this interface. */ interface IClasspathContributor : IContributor { - fun entriesFor(project: Project?) : Collection + fun classpathEntriesFor(project: Project?, context: KobaltContext) : Collection } diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/DependencyManager.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/DependencyManager.kt index 425a5695..1a26f54a 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/DependencyManager.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/DependencyManager.kt @@ -41,7 +41,7 @@ public class DependencyManager @Inject constructor(val executors: KobaltExecutor Collection { val result = hashSetOf() context.pluginInfo.classpathContributors.forEach { it: IClasspathContributor -> - result.addAll(it.entriesFor(project)) + result.addAll(it.classpathEntriesFor(project, context)) } return result } diff --git a/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt b/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt index ace3f6f1..4e950e01 100644 --- a/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt +++ b/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt @@ -92,8 +92,9 @@ class KotlinPlugin @Inject constructor(val executors: KobaltExecutors) return result } - // interface IClasspathContributor - override fun entriesFor(project: Project?): List = + // IClasspathContributor + + override fun classpathEntriesFor(project: Project?, context: KobaltContext): List = if (project == null || accept(project)) { // All Kotlin projects automatically get the Kotlin runtime added to their class path listOf(getKotlinCompilerJar("kotlin-stdlib"), getKotlinCompilerJar("kotlin-runtime")) diff --git a/src/main/kotlin/com/beust/kobalt/plugin/packaging/WarGenerator.kt b/src/main/kotlin/com/beust/kobalt/plugin/packaging/WarGenerator.kt index 90730d21..57577e67 100644 --- a/src/main/kotlin/com/beust/kobalt/plugin/packaging/WarGenerator.kt +++ b/src/main/kotlin/com/beust/kobalt/plugin/packaging/WarGenerator.kt @@ -42,7 +42,7 @@ class WarGenerator @Inject constructor(val dependencyManager: DependencyManager) // Run through all the classpath contributors and add their contributions to the libs/ directory context.pluginInfo.classpathContributors.map { - it.entriesFor(project) + it.classpathEntriesFor(project, context) }.map { deps : Collection -> deps.forEach { dep -> val jar = dep.jarFile.get()