diff --git a/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/pom.xml b/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/pom.xml index 73ca79427d8..feb3e4df6cc 100644 --- a/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/pom.xml +++ b/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/pom.xml @@ -22,7 +22,7 @@ - org.jetbrains.kotlin.script.util.StandardScript + org.jetbrains.kotlin.script.util.templates.StandardScriptTemplate ${org.jetbrains.kotlin:kotlin-script-util:jar} diff --git a/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/script.kts b/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/script.kts index 41c0ca6bf44..4e1ca9a81fe 100644 --- a/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/script.kts +++ b/libraries/tools/kotlin-maven-plugin-test/src/it/test-executeKotlinScriptWithTemplate/script.kts @@ -3,7 +3,7 @@ import java.lang.Exception if (!args.isEmpty()) println("some args passed") -if (this !is org.jetbrains.kotlin.script.util.StandardScript) +if (this !is org.jetbrains.kotlin.script.util.templates.StandardScriptTemplate) throw Exception("Unexpected script base class") println("Hello from Kotlin script file!") \ No newline at end of file diff --git a/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/resolve.kt b/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/resolve.kt index a2041c3366a..ff268677bbf 100644 --- a/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/resolve.kt +++ b/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/resolve.kt @@ -102,8 +102,8 @@ val defaultScriptBaseClasspath: List by lazy { ?: emptyList() } -class DefaultKotlinResolver() : +class ContextBasedResolver() : KotlinAnnotatedScriptDependenciesResolver(defaultScriptBaseClasspath, arrayListOf()) -class DefaultKotlinAnnotatedScriptDependenciesResolver : +class ContextAndAnnotationsBasedResolver : KotlinAnnotatedScriptDependenciesResolver(defaultScriptBaseClasspath, arrayListOf(DirectResolver(), MavenResolver())) diff --git a/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates.kt b/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates.kt deleted file mode 100644 index 7bc18f86c70..00000000000 --- a/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -@file:Suppress("unused") // an API - -package org.jetbrains.kotlin.script.util - -import org.jetbrains.kotlin.script.ScriptTemplateDefinition - -@ScriptTemplateDefinition(resolver = DefaultKotlinResolver::class, scriptFilePattern = ".*\\.kts") -abstract class StandardScript(val args: Array) - -@ScriptTemplateDefinition(resolver = DefaultKotlinAnnotatedScriptDependenciesResolver::class, scriptFilePattern = ".*\\.kts") -abstract class StandardScriptWithAnnotatedResolving(val args: Array) - -@ScriptTemplateDefinition(resolver = DefaultKotlinResolver::class, scriptFilePattern = ".*\\.kts") -abstract class ScriptWithBindings(val bindings: Map) - -@ScriptTemplateDefinition(resolver = DefaultKotlinAnnotatedScriptDependenciesResolver::class, scriptFilePattern = ".*\\.kts") -abstract class ScriptWithBindingsAndAnnotatedResolving(val bindings: Map) diff --git a/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates/templates.kt b/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates/templates.kt new file mode 100644 index 00000000000..277a818744c --- /dev/null +++ b/libraries/tools/kotlin-script-util/src/main/kotlin/org/jetbrains/kotlin/script/util/templates/templates.kt @@ -0,0 +1,35 @@ +/* + * Copyright 2010-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress("unused") // an API + +package org.jetbrains.kotlin.script.util.templates + +import org.jetbrains.kotlin.script.ScriptTemplateDefinition +import org.jetbrains.kotlin.script.util.ContextAndAnnotationsBasedResolver +import org.jetbrains.kotlin.script.util.ContextBasedResolver + +@ScriptTemplateDefinition(resolver = ContextBasedResolver::class, scriptFilePattern = ".*\\.kts") +abstract class StandardScriptTemplate(val args: Array) + +@ScriptTemplateDefinition(resolver = ContextAndAnnotationsBasedResolver::class, scriptFilePattern = ".*\\.kts") +abstract class StandardScriptTemplateWithAnnotatedResolving(val args: Array) + +@ScriptTemplateDefinition(resolver = ContextBasedResolver::class, scriptFilePattern = ".*\\.kts") +abstract class ScriptTemplateWithBindings(val bindings: Map) + +@ScriptTemplateDefinition(resolver = ContextAndAnnotationsBasedResolver::class, scriptFilePattern = ".*\\.kts") +abstract class ScriptTemplateWithBindingsAndAnnotatedResolving(val bindings: Map) diff --git a/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt b/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt index 7c506cd7fe4..f601bc44438 100644 --- a/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt +++ b/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt @@ -31,6 +31,9 @@ import org.jetbrains.kotlin.config.JVMConfigurationKeys import org.jetbrains.kotlin.config.addKotlinSourceRoot import org.jetbrains.kotlin.script.KotlinScriptDefinition import org.jetbrains.kotlin.script.KotlinScriptDefinitionFromAnnotatedTemplate +import org.jetbrains.kotlin.script.util.templates.ScriptTemplateWithBindings +import org.jetbrains.kotlin.script.util.templates.StandardScriptTemplate +import org.jetbrains.kotlin.script.util.templates.StandardScriptTemplateWithAnnotatedResolving import org.jetbrains.kotlin.utils.PathUtil import org.jetbrains.kotlin.utils.PathUtil.getResourcePathForClass import org.junit.Assert @@ -60,7 +63,7 @@ done @Test fun testArgsHelloWorld() { - val scriptClass = compileScript("args-hello-world.kts", StandardScript::class) + val scriptClass = compileScript("args-hello-world.kts", StandardScriptTemplate::class) Assert.assertNotNull(scriptClass) val ctor = scriptClass?.getConstructor(Array::class.java) Assert.assertNotNull(ctor) @@ -73,7 +76,7 @@ done @Test fun testBndHelloWorld() { - val scriptClass = compileScript("bindings-hello-world.kts", ScriptWithBindings::class) + val scriptClass = compileScript("bindings-hello-world.kts", ScriptTemplateWithBindings::class) Assert.assertNotNull(scriptClass) val ctor = scriptClass?.getConstructor(Map::class.java) Assert.assertNotNull(ctor) @@ -87,7 +90,7 @@ done @Test fun testResolveStdHelloWorld() { try { - compileScript("args-junit-hello-world.kts", StandardScript::class) + compileScript("args-junit-hello-world.kts", StandardScriptTemplate::class) Assert.fail("Should throw exception") } catch (e: Exception) { @@ -95,9 +98,9 @@ done Assert.assertTrue("Expecting message \"$expectedMsg...\"", e.message?.startsWith(expectedMsg) ?: false) } - val scriptClass = compileScript("args-junit-hello-world.kts", StandardScriptWithAnnotatedResolving::class) + val scriptClass = compileScript("args-junit-hello-world.kts", StandardScriptTemplateWithAnnotatedResolving::class) if (scriptClass == null) { - val resolver = DefaultKotlinAnnotatedScriptDependenciesResolver() + val resolver = ContextAndAnnotationsBasedResolver() System.err.println(resolver.baseClassPath) } Assert.assertNotNull(scriptClass)