diff --git a/src/main/kotlin/com/beust/kobalt/BasePluginTask.kt b/src/main/kotlin/com/beust/kobalt/BasePluginTask.kt index 077093bf..99f43d28 100644 --- a/src/main/kotlin/com/beust/kobalt/BasePluginTask.kt +++ b/src/main/kotlin/com/beust/kobalt/BasePluginTask.kt @@ -1,12 +1,12 @@ package com.beust.kobalt -import com.beust.kobalt.api.Plugin +import com.beust.kobalt.api.IPlugin import com.beust.kobalt.api.PluginTask import com.beust.kobalt.api.Project import com.beust.kobalt.internal.TaskResult import com.beust.kobalt.internal.TaskResult2 -public abstract class BasePluginTask(override val plugin: Plugin, +public abstract class BasePluginTask(override val plugin: IPlugin, override val name: String, override val doc: String, override val project: Project) diff --git a/src/main/kotlin/com/beust/kobalt/Plugins.kt b/src/main/kotlin/com/beust/kobalt/Plugins.kt index 52972fe0..0280408e 100644 --- a/src/main/kotlin/com/beust/kobalt/Plugins.kt +++ b/src/main/kotlin/com/beust/kobalt/Plugins.kt @@ -30,13 +30,13 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider() + private var pluginMap = hashMapOf() - fun addPluginInstance(plugin: Plugin) { + fun addPluginInstance(plugin: IPlugin) { pluginMap.put(plugin.name, plugin) } - val plugins : List + val plugins : List get() = ArrayList(pluginMap.values) /** @@ -44,9 +44,9 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider = arrayListOf() - val defaultPlugin : Plugin get() = findPlugin(KobaltDefaultPlugin.NAME)!! + val defaultPlugin : IPlugin get() = findPlugin(KobaltDefaultPlugin.NAME)!! - fun findPlugin(name: String) : Plugin? = pluginMap[name] + fun findPlugin(name: String) : IPlugin? = pluginMap[name] } fun applyPlugins(context: KobaltContext, projects: List) { @@ -86,7 +86,7 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider TaskResult { + fun toTask(m: Method, project: Project, plugin: IPlugin): (Project) -> TaskResult { val result: (Project) -> TaskResult = { m.invoke(plugin, project) as TaskResult } diff --git a/src/main/kotlin/com/beust/kobalt/api/BasePlugin.kt b/src/main/kotlin/com/beust/kobalt/api/BasePlugin.kt index d576dbd5..14dd345b 100644 --- a/src/main/kotlin/com/beust/kobalt/api/BasePlugin.kt +++ b/src/main/kotlin/com/beust/kobalt/api/BasePlugin.kt @@ -5,10 +5,10 @@ import com.beust.kobalt.internal.TaskManager import java.util.* import kotlin.properties.Delegates -abstract public class BasePlugin : Plugin { +abstract public class BasePlugin : IPlugin { override val tasks: ArrayList = arrayListOf() override var taskManager: TaskManager by Delegates.notNull() - override var methodTasks = arrayListOf() + override var methodTasks = arrayListOf() override fun accept(project: Project) = true var plugins: Plugins by Delegates.notNull() diff --git a/src/main/kotlin/com/beust/kobalt/api/Plugin.kt b/src/main/kotlin/com/beust/kobalt/api/IPlugin.kt similarity index 98% rename from src/main/kotlin/com/beust/kobalt/api/Plugin.kt rename to src/main/kotlin/com/beust/kobalt/api/IPlugin.kt index dcdb64c2..d2d36207 100644 --- a/src/main/kotlin/com/beust/kobalt/api/Plugin.kt +++ b/src/main/kotlin/com/beust/kobalt/api/IPlugin.kt @@ -8,7 +8,7 @@ import com.beust.kobalt.internal.TaskResult2 import java.lang.reflect.Method import java.util.* -public interface Plugin { +public interface IPlugin { val name: String val tasks : ArrayList fun accept(project: Project) : Boolean diff --git a/src/main/kotlin/com/beust/kobalt/api/KobaltPluginXml.kt b/src/main/kotlin/com/beust/kobalt/api/KobaltPluginXml.kt index e7d283f2..844b7cc1 100644 --- a/src/main/kotlin/com/beust/kobalt/api/KobaltPluginXml.kt +++ b/src/main/kotlin/com/beust/kobalt/api/KobaltPluginXml.kt @@ -66,7 +66,7 @@ class ClassNameXml { * needs to access plug-in info can then just inject a PluginInfo object. */ class PluginInfo(val xml: KobaltPluginXml, val classLoader: ClassLoader?) { - val plugins = arrayListOf() + val plugins = arrayListOf() val projectContributors = arrayListOf() val classpathContributors = arrayListOf() val initContributors = arrayListOf() @@ -120,7 +120,7 @@ class PluginInfo(val xml: KobaltPluginXml, val classLoader: ClassLoader?) { else Class.forName(className) xml.plugins?.className?.forEach { - plugins.add(factory.instanceOf(forName(it)) as Plugin) + plugins.add(factory.instanceOf(forName(it)) as IPlugin) } xml.classpathClassName?.className?.forEach { classpathContributors.add(factory.instanceOf(forName(it)) as IClasspathContributor) diff --git a/src/main/kotlin/com/beust/kobalt/api/PluginTask.kt b/src/main/kotlin/com/beust/kobalt/api/PluginTask.kt index 592a18f7..be0994fa 100644 --- a/src/main/kotlin/com/beust/kobalt/api/PluginTask.kt +++ b/src/main/kotlin/com/beust/kobalt/api/PluginTask.kt @@ -5,7 +5,7 @@ import com.beust.kobalt.misc.toString import java.util.concurrent.Callable abstract public class PluginTask : Callable> { - abstract val plugin: Plugin + abstract val plugin: IPlugin open val name: String = "" open val doc: String = "" abstract val project: Project diff --git a/src/main/kotlin/com/beust/kobalt/kotlin/BuildFileCompiler.kt b/src/main/kotlin/com/beust/kobalt/kotlin/BuildFileCompiler.kt index 0e5eb9a6..23f6e43f 100644 --- a/src/main/kotlin/com/beust/kobalt/kotlin/BuildFileCompiler.kt +++ b/src/main/kotlin/com/beust/kobalt/kotlin/BuildFileCompiler.kt @@ -240,7 +240,7 @@ public class BuildFileCompiler @Inject constructor(@Assisted("buildFiles") val b } else { val taskAnnotation = method.getAnnotation(Task::class.java) if (taskAnnotation != null) { - Plugins.defaultPlugin.methodTasks.add(Plugin.MethodTask(method, taskAnnotation)) + Plugins.defaultPlugin.methodTasks.add(IPlugin.MethodTask(method, taskAnnotation)) } }}