Rename ScriptDefinition to ScriptCompileConfiguration
This commit is contained in:
+6
-6
@@ -20,7 +20,7 @@ import kotlin.script.experimental.jvm.compat.mapToLegacyScriptReportPosition
|
||||
import kotlin.script.experimental.jvm.compat.mapToLegacyScriptReportSeverity
|
||||
|
||||
class BridgeDependenciesResolver(
|
||||
val scriptDefinition: ScriptDefinition,
|
||||
val scriptCompilationConfiguration: ScriptCompilationConfiguration,
|
||||
val onClasspathUpdated: (List<File>) -> Unit = {}
|
||||
) : AsyncDependenciesResolver {
|
||||
|
||||
@@ -39,12 +39,12 @@ class BridgeDependenciesResolver(
|
||||
)
|
||||
)
|
||||
|
||||
val refineFn = scriptDefinition[ScriptDefinition.refineConfigurationOnAnnotations]?.handler
|
||||
val refineFn = scriptCompilationConfiguration[ScriptCompilationConfiguration.refineConfigurationOnAnnotations]?.handler
|
||||
val refinedConfiguration =
|
||||
if (refineFn == null) null
|
||||
else {
|
||||
val res = refineFn(
|
||||
ScriptDataFacade(scriptContents.toScriptSource(), scriptDefinition, processedScriptData)
|
||||
ScriptDataFacade(scriptContents.toScriptSource(), scriptCompilationConfiguration, processedScriptData)
|
||||
)
|
||||
when (res) {
|
||||
is ResultWithDiagnostics.Failure ->
|
||||
@@ -56,11 +56,11 @@ class BridgeDependenciesResolver(
|
||||
}
|
||||
}
|
||||
|
||||
val newClasspath = refinedConfiguration?.get(ScriptDefinition.dependencies)
|
||||
val newClasspath = refinedConfiguration?.get(ScriptCompilationConfiguration.dependencies)
|
||||
?.flatMap { (it as JvmDependency).classpath } ?: emptyList()
|
||||
if (newClasspath.isNotEmpty()) {
|
||||
val oldClasspath =
|
||||
scriptDefinition[ScriptDefinition.dependencies]
|
||||
scriptCompilationConfiguration[ScriptCompilationConfiguration.dependencies]
|
||||
?.flatMap { (it as JvmDependency).classpath } ?: emptyList()
|
||||
if (newClasspath != oldClasspath) {
|
||||
onClasspathUpdated(newClasspath)
|
||||
@@ -69,7 +69,7 @@ class BridgeDependenciesResolver(
|
||||
DependenciesResolver.ResolveResult.Success(
|
||||
ScriptDependencies(
|
||||
classpath = newClasspath, // TODO: maybe it should return only increment from the initial config
|
||||
imports = scriptDefinition[ScriptDefinition.defaultImports]?.toList() ?: emptyList()
|
||||
imports = scriptCompilationConfiguration[ScriptCompilationConfiguration.defaultImports]?.toList() ?: emptyList()
|
||||
),
|
||||
diagnostics
|
||||
)
|
||||
|
||||
+10
-10
@@ -15,31 +15,31 @@ data class JvmDependency(val classpath: List<File>) : ScriptDependency {
|
||||
constructor(vararg classpathEntries: File) : this(classpathEntries.asList())
|
||||
}
|
||||
|
||||
interface JvmScriptDefinitionKeys
|
||||
interface JvmScriptCompilationConfigurationKeys
|
||||
|
||||
open class JvmScriptDefinitionBuilder : PropertiesCollection.Builder(), JvmScriptDefinitionKeys {
|
||||
companion object : PropertiesCollection.Builder.BuilderExtension<JvmScriptDefinitionBuilder>, JvmScriptDefinitionKeys {
|
||||
override fun get() = JvmScriptDefinitionBuilder()
|
||||
open class JvmScriptCompilationConfigurationBuilder : PropertiesCollection.Builder(), JvmScriptCompilationConfigurationKeys {
|
||||
companion object : PropertiesCollection.Builder.BuilderExtension<JvmScriptCompilationConfigurationBuilder>, JvmScriptCompilationConfigurationKeys {
|
||||
override fun get() = JvmScriptCompilationConfigurationBuilder()
|
||||
}
|
||||
}
|
||||
|
||||
fun JvmScriptDefinitionBuilder.dependenciesFromCurrentContext(vararg libraries: String, wholeClasspath: Boolean = false) {
|
||||
fun JvmScriptCompilationConfigurationBuilder.dependenciesFromCurrentContext(vararg libraries: String, wholeClasspath: Boolean = false) {
|
||||
dependenciesFromClassloader(*libraries, wholeClasspath = wholeClasspath)
|
||||
}
|
||||
|
||||
fun JvmScriptDefinitionBuilder.dependenciesFromClassloader(
|
||||
fun JvmScriptCompilationConfigurationBuilder.dependenciesFromClassloader(
|
||||
vararg libraries: String,
|
||||
classLoader: ClassLoader = Thread.currentThread().contextClassLoader,
|
||||
wholeClasspath: Boolean = false
|
||||
) {
|
||||
ScriptDefinition.dependencies.append(
|
||||
ScriptCompilationConfiguration.dependencies.append(
|
||||
JvmDependency(scriptCompilationClasspathFromContext(*libraries, classLoader = classLoader, wholeClasspath = wholeClasspath))
|
||||
)
|
||||
}
|
||||
|
||||
val JvmScriptDefinitionKeys.javaHome by PropertiesCollection.keyCopy(ScriptingEnvironment.jvm.javaHome)
|
||||
val JvmScriptCompilationConfigurationKeys.javaHome by PropertiesCollection.keyCopy(ScriptingEnvironment.jvm.javaHome)
|
||||
|
||||
@Suppress("unused")
|
||||
val ScriptDefinitionKeys.jvm
|
||||
get() = JvmScriptDefinitionBuilder
|
||||
val ScriptCompilationConfigurationKeys.jvm
|
||||
get() = JvmScriptCompilationConfigurationBuilder
|
||||
|
||||
Reference in New Issue
Block a user