diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt index 68c8a347ced..fe0bda1a8d9 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt @@ -179,7 +179,7 @@ class KotlinCoreEnvironment private constructor( }) sourceFiles.sortBy { it.virtualFile.path } - KotlinScriptDefinitionProvider.getInstance(project).let { scriptDefinitionProvider -> + KotlinScriptDefinitionProvider.getInstance(project)?.let { scriptDefinitionProvider -> scriptDefinitionProvider.setScriptDefinitions( configuration.getList(JVMConfigurationKeys.SCRIPT_DEFINITIONS)) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionProvider.kt index f3124fa7fe3..616ef0161ad 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionProvider.kt @@ -1,5 +1,5 @@ /* - * Copyright 2010-2016 JetBrains s.r.o. + * Copyright 2010-2017 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. @@ -21,7 +21,6 @@ import com.intellij.openapi.fileTypes.LanguageFileType import com.intellij.openapi.project.Project import com.intellij.openapi.vfs.VirtualFile import com.intellij.psi.PsiFile -import java.util.* import kotlin.concurrent.read import kotlin.concurrent.write @@ -68,13 +67,13 @@ class KotlinScriptDefinitionProvider { companion object { @JvmStatic - fun getInstance(project: Project): KotlinScriptDefinitionProvider = + fun getInstance(project: Project): KotlinScriptDefinitionProvider? = ServiceManager.getService(project, KotlinScriptDefinitionProvider::class.java) } } fun getScriptDefinition(file: VirtualFile, project: Project): KotlinScriptDefinition? = - KotlinScriptDefinitionProvider.getInstance(project).findScriptDefinition(file) + KotlinScriptDefinitionProvider.getInstance(project)?.findScriptDefinition(file) fun getScriptDefinition(psiFile: PsiFile): KotlinScriptDefinition? = - KotlinScriptDefinitionProvider.getInstance(psiFile.project).findScriptDefinition(psiFile) + KotlinScriptDefinitionProvider.getInstance(psiFile.project)?.findScriptDefinition(psiFile) diff --git a/compiler/tests-common/org/jetbrains/kotlin/codegen/CodegenTestFiles.java b/compiler/tests-common/org/jetbrains/kotlin/codegen/CodegenTestFiles.java index 74cda5234ee..c79b497c428 100644 --- a/compiler/tests-common/org/jetbrains/kotlin/codegen/CodegenTestFiles.java +++ b/compiler/tests-common/org/jetbrains/kotlin/codegen/CodegenTestFiles.java @@ -1,5 +1,5 @@ /* - * Copyright 2010-2016 JetBrains s.r.o. + * Copyright 2010-2017 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. @@ -133,7 +133,9 @@ public class CodegenTestFiles { } } - KotlinScriptDefinitionProvider.getInstance(project).addScriptDefinition(StandardScriptDefinition.INSTANCE); + KotlinScriptDefinitionProvider scriptDefinitionProvider = KotlinScriptDefinitionProvider.getInstance(project); + assert scriptDefinitionProvider != null; + scriptDefinitionProvider.addScriptDefinition(StandardScriptDefinition.INSTANCE); return new CodegenTestFiles(Collections.singletonList(file), expectedValues, scriptParameterValues); } diff --git a/idea/idea-repl/src/org/jetbrains/kotlin/console/KotlinConsoleRunner.kt b/idea/idea-repl/src/org/jetbrains/kotlin/console/KotlinConsoleRunner.kt index 46f437bb338..2b5ca664c7e 100644 --- a/idea/idea-repl/src/org/jetbrains/kotlin/console/KotlinConsoleRunner.kt +++ b/idea/idea-repl/src/org/jetbrains/kotlin/console/KotlinConsoleRunner.kt @@ -1,5 +1,5 @@ /* - * Copyright 2010-2016 JetBrains s.r.o. + * Copyright 2010-2017 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. @@ -91,7 +91,7 @@ class KotlinConsoleRunner( override fun finishConsole() { KotlinConsoleKeeper.getInstance(project).removeConsole(consoleView.virtualFile) - KotlinScriptDefinitionProvider.getInstance(project).removeScriptDefinition(consoleScriptDefinition) + KotlinScriptDefinitionProvider.getInstance(project)!!.removeScriptDefinition(consoleScriptDefinition) if (ApplicationManager.getApplication().isUnitTestMode) { consoleTerminated.countDown() @@ -157,7 +157,7 @@ class KotlinConsoleRunner( val executeAction = KtExecuteCommandAction(consoleView.virtualFile) executeAction.registerCustomShortcutSet(CommonShortcuts.CTRL_ENTER, consoleView.consoleEditor.component) - KotlinScriptDefinitionProvider.getInstance(project).addScriptDefinition(consoleScriptDefinition) + KotlinScriptDefinitionProvider.getInstance(project)!!.addScriptDefinition(consoleScriptDefinition) enableCompletion(consoleView) return consoleView