mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-26 16:28:12 -07:00
Rename Plugin -> IPlugin.
This commit is contained in:
parent
4c24dd704d
commit
7c20a0313f
7 changed files with 16 additions and 16 deletions
|
@ -1,12 +1,12 @@
|
||||||
package com.beust.kobalt
|
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.PluginTask
|
||||||
import com.beust.kobalt.api.Project
|
import com.beust.kobalt.api.Project
|
||||||
import com.beust.kobalt.internal.TaskResult
|
import com.beust.kobalt.internal.TaskResult
|
||||||
import com.beust.kobalt.internal.TaskResult2
|
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 name: String,
|
||||||
override val doc: String,
|
override val doc: String,
|
||||||
override val project: Project)
|
override val project: Project)
|
||||||
|
|
|
@ -30,13 +30,13 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider<Tas
|
||||||
val pluginInfo: PluginInfo) {
|
val pluginInfo: PluginInfo) {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private var pluginMap = hashMapOf<String, Plugin>()
|
private var pluginMap = hashMapOf<String, IPlugin>()
|
||||||
|
|
||||||
fun addPluginInstance(plugin: Plugin) {
|
fun addPluginInstance(plugin: IPlugin) {
|
||||||
pluginMap.put(plugin.name, plugin)
|
pluginMap.put(plugin.name, plugin)
|
||||||
}
|
}
|
||||||
|
|
||||||
val plugins : List<Plugin>
|
val plugins : List<IPlugin>
|
||||||
get() = ArrayList(pluginMap.values)
|
get() = ArrayList(pluginMap.values)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -44,9 +44,9 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider<Tas
|
||||||
*/
|
*/
|
||||||
val dynamicPlugins : ArrayList<IClasspathDependency> = arrayListOf()
|
val dynamicPlugins : ArrayList<IClasspathDependency> = 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<Project>) {
|
fun applyPlugins(context: KobaltContext, projects: List<Project>) {
|
||||||
|
@ -86,7 +86,7 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider<Tas
|
||||||
val annotation = it.second
|
val annotation = it.second
|
||||||
|
|
||||||
log(3, "Adding MethodTask from @Task: ${it.first} $annotation")
|
log(3, "Adding MethodTask from @Task: ${it.first} $annotation")
|
||||||
plugin.methodTasks.add(Plugin.MethodTask(it.first, annotation))
|
plugin.methodTasks.add(IPlugin.MethodTask(it.first, annotation))
|
||||||
}
|
}
|
||||||
|
|
||||||
currentClass = currentClass.superclass
|
currentClass = currentClass.superclass
|
||||||
|
@ -98,7 +98,7 @@ public class Plugins @Inject constructor (val taskManagerProvider : Provider<Tas
|
||||||
val method = methodTask.method
|
val method = methodTask.method
|
||||||
val annotation = methodTask.taskAnnotation
|
val annotation = methodTask.taskAnnotation
|
||||||
|
|
||||||
fun toTask(m: Method, project: Project, plugin: Plugin): (Project) -> TaskResult {
|
fun toTask(m: Method, project: Project, plugin: IPlugin): (Project) -> TaskResult {
|
||||||
val result: (Project) -> TaskResult = {
|
val result: (Project) -> TaskResult = {
|
||||||
m.invoke(plugin, project) as TaskResult
|
m.invoke(plugin, project) as TaskResult
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,10 @@ import com.beust.kobalt.internal.TaskManager
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import kotlin.properties.Delegates
|
import kotlin.properties.Delegates
|
||||||
|
|
||||||
abstract public class BasePlugin : Plugin {
|
abstract public class BasePlugin : IPlugin {
|
||||||
override val tasks: ArrayList<PluginTask> = arrayListOf()
|
override val tasks: ArrayList<PluginTask> = arrayListOf()
|
||||||
override var taskManager: TaskManager by Delegates.notNull()
|
override var taskManager: TaskManager by Delegates.notNull()
|
||||||
override var methodTasks = arrayListOf<Plugin.MethodTask>()
|
override var methodTasks = arrayListOf<IPlugin.MethodTask>()
|
||||||
override fun accept(project: Project) = true
|
override fun accept(project: Project) = true
|
||||||
var plugins: Plugins by Delegates.notNull()
|
var plugins: Plugins by Delegates.notNull()
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ import com.beust.kobalt.internal.TaskResult2
|
||||||
import java.lang.reflect.Method
|
import java.lang.reflect.Method
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
public interface Plugin {
|
public interface IPlugin {
|
||||||
val name: String
|
val name: String
|
||||||
val tasks : ArrayList<PluginTask>
|
val tasks : ArrayList<PluginTask>
|
||||||
fun accept(project: Project) : Boolean
|
fun accept(project: Project) : Boolean
|
|
@ -66,7 +66,7 @@ class ClassNameXml {
|
||||||
* needs to access plug-in info can then just inject a PluginInfo object.
|
* needs to access plug-in info can then just inject a PluginInfo object.
|
||||||
*/
|
*/
|
||||||
class PluginInfo(val xml: KobaltPluginXml, val classLoader: ClassLoader?) {
|
class PluginInfo(val xml: KobaltPluginXml, val classLoader: ClassLoader?) {
|
||||||
val plugins = arrayListOf<Plugin>()
|
val plugins = arrayListOf<IPlugin>()
|
||||||
val projectContributors = arrayListOf<IProjectContributor>()
|
val projectContributors = arrayListOf<IProjectContributor>()
|
||||||
val classpathContributors = arrayListOf<IClasspathContributor>()
|
val classpathContributors = arrayListOf<IClasspathContributor>()
|
||||||
val initContributors = arrayListOf<IInitContributor>()
|
val initContributors = arrayListOf<IInitContributor>()
|
||||||
|
@ -120,7 +120,7 @@ class PluginInfo(val xml: KobaltPluginXml, val classLoader: ClassLoader?) {
|
||||||
else Class.forName(className)
|
else Class.forName(className)
|
||||||
|
|
||||||
xml.plugins?.className?.forEach {
|
xml.plugins?.className?.forEach {
|
||||||
plugins.add(factory.instanceOf(forName(it)) as Plugin)
|
plugins.add(factory.instanceOf(forName(it)) as IPlugin)
|
||||||
}
|
}
|
||||||
xml.classpathClassName?.className?.forEach {
|
xml.classpathClassName?.className?.forEach {
|
||||||
classpathContributors.add(factory.instanceOf(forName(it)) as IClasspathContributor)
|
classpathContributors.add(factory.instanceOf(forName(it)) as IClasspathContributor)
|
||||||
|
|
|
@ -5,7 +5,7 @@ import com.beust.kobalt.misc.toString
|
||||||
import java.util.concurrent.Callable
|
import java.util.concurrent.Callable
|
||||||
|
|
||||||
abstract public class PluginTask : Callable<TaskResult2<PluginTask>> {
|
abstract public class PluginTask : Callable<TaskResult2<PluginTask>> {
|
||||||
abstract val plugin: Plugin
|
abstract val plugin: IPlugin
|
||||||
open val name: String = ""
|
open val name: String = ""
|
||||||
open val doc: String = ""
|
open val doc: String = ""
|
||||||
abstract val project: Project
|
abstract val project: Project
|
||||||
|
|
|
@ -240,7 +240,7 @@ public class BuildFileCompiler @Inject constructor(@Assisted("buildFiles") val b
|
||||||
} else {
|
} else {
|
||||||
val taskAnnotation = method.getAnnotation(Task::class.java)
|
val taskAnnotation = method.getAnnotation(Task::class.java)
|
||||||
if (taskAnnotation != null) {
|
if (taskAnnotation != null) {
|
||||||
Plugins.defaultPlugin.methodTasks.add(Plugin.MethodTask(method, taskAnnotation))
|
Plugins.defaultPlugin.methodTasks.add(IPlugin.MethodTask(method, taskAnnotation))
|
||||||
}
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue