mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-26 00:17:11 -07:00
Move IClasspathDependency in its own package.
This commit is contained in:
parent
c14eb2adbf
commit
7af789d282
24 changed files with 85 additions and 60 deletions
|
@ -4,7 +4,7 @@ import com.beust.kobalt.api.Kobalt
|
|||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.api.annotation.Directive
|
||||
import com.beust.kobalt.maven.DepFactory
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import com.beust.kobalt.SystemProperties
|
||||
import java.io.File
|
||||
|
|
|
@ -5,7 +5,7 @@ import com.beust.kobalt.api.annotation.Task
|
|||
import com.beust.kobalt.internal.PluginInfo
|
||||
import com.beust.kobalt.internal.TaskManager
|
||||
import com.beust.kobalt.maven.DepFactory
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.LocalRepo
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package com.beust.kobalt
|
||||
|
||||
import com.beust.kobalt.maven.*
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.Node
|
||||
import com.beust.kobalt.misc.log
|
||||
import com.google.inject.Inject
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package com.beust.kobalt.api
|
||||
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
|
||||
/**
|
||||
* Plugins that export classpath entries need to implement this interface.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package com.beust.kobalt.api
|
||||
|
||||
import com.beust.kobalt.TaskResult
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
|
||||
/**
|
||||
* Plugins that can run a project (task "run" or "test") should implement this interface.
|
||||
|
|
|
@ -3,8 +3,8 @@ package com.beust.kobalt.api
|
|||
import com.beust.kobalt.Plugins
|
||||
import com.beust.kobalt.api.annotation.Directive
|
||||
import com.beust.kobalt.internal.IProjectInfo
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.MavenDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.plugin.android.AndroidPlugin
|
||||
import com.beust.kobalt.plugin.android.Proguard
|
||||
|
|
|
@ -6,7 +6,7 @@ import com.beust.kobalt.TaskResult
|
|||
import com.beust.kobalt.api.IRunnerContributor
|
||||
import com.beust.kobalt.api.KobaltContext
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.log
|
||||
import java.io.File
|
||||
|
|
|
@ -3,7 +3,7 @@ package com.beust.kobalt.internal
|
|||
import com.beust.kobalt.api.IRunnerContributor
|
||||
import com.beust.kobalt.api.KobaltContext
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
|
||||
public class JUnitRunner() : GenericTestRunner() {
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ import com.beust.kobalt.TaskResult
|
|||
import com.beust.kobalt.api.KobaltContext
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.DependencyManager
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.google.inject.Inject
|
||||
import java.io.File
|
||||
import java.util.*
|
||||
|
|
|
@ -3,7 +3,7 @@ package com.beust.kobalt.internal
|
|||
import com.beust.kobalt.api.IRunnerContributor
|
||||
import com.beust.kobalt.api.KobaltContext
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import java.io.File
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@ import com.beust.kobalt.internal.PluginInfo
|
|||
import com.beust.kobalt.internal.build.BuildFile
|
||||
import com.beust.kobalt.internal.build.BuildFileCompiler
|
||||
import com.beust.kobalt.maven.DependencyManager
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.MavenDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import com.beust.kobalt.misc.log
|
||||
import com.google.gson.Gson
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
package com.beust.kobalt.maven
|
||||
|
||||
import com.beust.kobalt.KobaltException
|
||||
import com.beust.kobalt.maven.dependency.FileDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import java.util.concurrent.ExecutorService
|
||||
import javax.inject.Inject
|
||||
|
|
|
@ -4,6 +4,8 @@ import com.beust.kobalt.api.IClasspathContributor
|
|||
import com.beust.kobalt.api.KobaltContext
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.api.ProjectDescription
|
||||
import com.beust.kobalt.maven.dependency.FileDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import com.beust.kobalt.misc.warn
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.beust.kobalt.maven
|
||||
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.google.inject.assistedinject.Assisted
|
||||
import java.io.*
|
||||
import java.net.HttpURLConnection
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
package com.beust.kobalt.maven.dependency
|
||||
|
||||
import com.beust.kobalt.maven.CompletedFuture
|
||||
import org.apache.maven.model.Dependency
|
||||
import java.io.File
|
||||
|
||||
open public class FileDependency(open val fileName: String) : IClasspathDependency, Comparable<FileDependency> {
|
||||
override val id = IClasspathDependency.PREFIX_FILE + fileName
|
||||
|
||||
override val jarFile = CompletedFuture(File(fileName))
|
||||
|
||||
override fun toMavenDependencies(): Dependency {
|
||||
with(Dependency()) {
|
||||
systemPath = jarFile.get().absolutePath
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
||||
override val shortId = fileName
|
||||
|
||||
override fun directDependencies() = arrayListOf<IClasspathDependency>()
|
||||
|
||||
override fun compareTo(other: FileDependency) = fileName.compareTo(other.fileName)
|
||||
|
||||
override fun toString() = fileName
|
||||
|
||||
override fun equals(other: Any?): Boolean{
|
||||
if (this === other) return true
|
||||
if (other?.javaClass != javaClass) return false
|
||||
|
||||
other as FileDependency
|
||||
|
||||
if (id != other.id) return false
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
override fun hashCode() = id.hashCode()
|
||||
}
|
|
@ -1,11 +1,17 @@
|
|||
package com.beust.kobalt.maven
|
||||
package com.beust.kobalt.maven.dependency
|
||||
|
||||
import org.apache.maven.model.Dependency
|
||||
import java.io.File
|
||||
import java.util.*
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
import java.util.concurrent.ExecutorService
|
||||
import java.util.concurrent.Future
|
||||
|
||||
/**
|
||||
* Encapsulate a dependency that can be put on the classpath. This interface
|
||||
* has two subclasses: FileDependency (a physical file) and MavenDependency,
|
||||
* which represents a dependency living in a Maven repo.
|
||||
*/
|
||||
interface IClasspathDependency {
|
||||
companion object {
|
||||
val PREFIX_FILE: String = "file://"
|
||||
|
@ -18,7 +24,7 @@ interface IClasspathDependency {
|
|||
val jarFile: Future<File>
|
||||
|
||||
/** Convert to a Maven <dependency> model tag */
|
||||
fun toMavenDependencies() : org.apache.maven.model.Dependency
|
||||
fun toMavenDependencies() : Dependency
|
||||
|
||||
/** The list of dependencies for this element (not the transitive closure */
|
||||
fun directDependencies(): List<IClasspathDependency>
|
||||
|
@ -54,37 +60,3 @@ interface IClasspathDependency {
|
|||
return result
|
||||
}
|
||||
}
|
||||
|
||||
open public class FileDependency(open val fileName: String) : IClasspathDependency, Comparable<FileDependency> {
|
||||
override val id = IClasspathDependency.PREFIX_FILE + fileName
|
||||
|
||||
override val jarFile = CompletedFuture(File(fileName))
|
||||
|
||||
override fun toMavenDependencies(): org.apache.maven.model.Dependency {
|
||||
with(org.apache.maven.model.Dependency()) {
|
||||
systemPath = jarFile.get().absolutePath
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
||||
override val shortId = fileName
|
||||
|
||||
override fun directDependencies() = arrayListOf<IClasspathDependency>()
|
||||
|
||||
override fun compareTo(other: FileDependency) = fileName.compareTo(other.fileName)
|
||||
|
||||
override fun toString() = fileName
|
||||
|
||||
override fun equals(other: Any?): Boolean{
|
||||
if (this === other) return true
|
||||
if (other?.javaClass != javaClass) return false
|
||||
|
||||
other as FileDependency
|
||||
|
||||
if (id != other.id) return false
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
override fun hashCode() = id.hashCode()
|
||||
}
|
|
@ -1,11 +1,13 @@
|
|||
package com.beust.kobalt.maven
|
||||
package com.beust.kobalt.maven.dependency
|
||||
|
||||
import com.beust.kobalt.KobaltException
|
||||
import com.beust.kobalt.api.Kobalt
|
||||
import com.beust.kobalt.maven.*
|
||||
import com.beust.kobalt.misc.DependencyExecutor
|
||||
import com.beust.kobalt.misc.Versions
|
||||
import com.beust.kobalt.misc.warn
|
||||
import com.google.inject.Key
|
||||
import org.apache.maven.model.Dependency
|
||||
import java.io.File
|
||||
import java.util.concurrent.ExecutorService
|
||||
import java.util.concurrent.Future
|
||||
|
@ -59,8 +61,8 @@ public class MavenDependency @Inject constructor(mavenId: MavenId,
|
|||
|
||||
override val id = mavenId.toId
|
||||
|
||||
override fun toMavenDependencies(): org.apache.maven.model.Dependency {
|
||||
return org.apache.maven.model.Dependency().apply {
|
||||
override fun toMavenDependencies(): Dependency {
|
||||
return Dependency().apply {
|
||||
setGroupId(groupId)
|
||||
setArtifactId(artifactId)
|
||||
setVersion(version)
|
|
@ -2,7 +2,7 @@ package com.beust.kobalt.misc
|
|||
|
||||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.DepFactory
|
||||
import com.beust.kobalt.maven.MavenDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.maven.MavenId
|
||||
import javax.inject.Inject
|
||||
|
||||
|
|
|
@ -5,9 +5,9 @@ import com.beust.kobalt.api.*
|
|||
import com.beust.kobalt.api.annotation.Directive
|
||||
import com.beust.kobalt.api.annotation.Task
|
||||
import com.beust.kobalt.internal.CompilerActionInfo
|
||||
import com.beust.kobalt.maven.FileDependency
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.MavenId
|
||||
import com.beust.kobalt.maven.dependency.FileDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.RunCommand
|
||||
import com.beust.kobalt.misc.log
|
||||
|
|
|
@ -6,7 +6,7 @@ import com.beust.kobalt.api.annotation.Directive
|
|||
import com.beust.kobalt.api.annotation.Task
|
||||
import com.beust.kobalt.internal.JvmCompilerPlugin
|
||||
import com.beust.kobalt.maven.DependencyManager
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import com.beust.kobalt.misc.RunCommand
|
||||
import com.beust.kobalt.misc.warn
|
||||
|
|
|
@ -8,8 +8,8 @@ import com.beust.kobalt.internal.CompilerActionInfo
|
|||
import com.beust.kobalt.internal.ICompilerAction
|
||||
import com.beust.kobalt.internal.JvmCompiler
|
||||
import com.beust.kobalt.maven.DepFactory
|
||||
import com.beust.kobalt.maven.FileDependency
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.FileDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.LocalRepo
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
|
|
|
@ -11,6 +11,9 @@ import com.beust.kobalt.internal.CompilerActionInfo
|
|||
import com.beust.kobalt.internal.JvmCompiler
|
||||
import com.beust.kobalt.internal.JvmCompilerPlugin
|
||||
import com.beust.kobalt.maven.*
|
||||
import com.beust.kobalt.maven.dependency.FileDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
import com.beust.kobalt.misc.warn
|
||||
|
|
|
@ -11,7 +11,7 @@ import com.beust.kobalt.api.annotation.Task
|
|||
import com.beust.kobalt.glob
|
||||
import com.beust.kobalt.internal.JvmCompilerPlugin
|
||||
import com.beust.kobalt.maven.DependencyManager
|
||||
import com.beust.kobalt.maven.IClasspathDependency
|
||||
import com.beust.kobalt.maven.dependency.IClasspathDependency
|
||||
import com.beust.kobalt.maven.LocalRepo
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltExecutors
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.beust.kobalt.maven
|
|||
|
||||
import com.beust.kobalt.Args
|
||||
import com.beust.kobalt.TestModule
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.DependencyExecutor
|
||||
import com.beust.kobalt.misc.MainModule
|
||||
import com.google.inject.Guice
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue