Refactor: Make DependenciesCache and ScriptDependenciesUpdater services

Rename: DependenciesCache -> ScriptDependenciesCache
    (makes sense to make name more specific since it is a service now)
This commit is contained in:
Pavel V. Talanov
2017-07-20 14:56:10 +03:00
parent f1811e7f0e
commit d5ca46157a
4 changed files with 12 additions and 7 deletions
@@ -26,7 +26,7 @@ import kotlin.concurrent.read
import kotlin.concurrent.write
import kotlin.script.dependencies.ScriptDependencies
internal class DependenciesCache(private val project: Project) {
internal class ScriptDependenciesCache(private val project: Project) {
private val cacheLock = ReentrantReadWriteLock()
private val cache = hashMapOf<String, ScriptDependencies>()
@@ -40,13 +40,12 @@ class IdeScriptDependenciesProvider(
}
}
class ScriptDependenciesManager(
class ScriptDependenciesManager internal constructor(
private val project: Project,
private val scriptDefinitionProvider: KotlinScriptDefinitionProvider
private val scriptDefinitionProvider: KotlinScriptDefinitionProvider,
private val cacheUpdater: ScriptDependenciesUpdater,
private val cache: ScriptDependenciesCache
) {
private val cache = DependenciesCache(project)
private val cacheUpdater = ScriptDependenciesUpdater(project, cache, scriptDefinitionProvider)
init {
reloadScriptDefinitions()
}
@@ -42,7 +42,7 @@ import kotlin.script.dependencies.experimental.AsyncDependenciesResolver
internal class ScriptDependenciesUpdater(
private val project: Project,
private val cache: DependenciesCache,
private val cache: ScriptDependenciesCache,
private val scriptDefinitionProvider: KotlinScriptDefinitionProvider
) {
private val requests = ConcurrentHashMap<String, ModStampedRequest>()
+6
View File
@@ -284,6 +284,12 @@
<projectService serviceInterface="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesManager"
serviceImplementation="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesManager"/>
<projectService serviceInterface="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesCache"
serviceImplementation="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesCache"/>
<projectService serviceInterface="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesUpdater"
serviceImplementation="org.jetbrains.kotlin.idea.core.script.ScriptDependenciesUpdater"/>
<projectService serviceInterface="org.jetbrains.kotlin.script.ScriptReportSink"
serviceImplementation="org.jetbrains.kotlin.idea.core.script.IdeScriptReportSink"/>