From 22a56a81b935872f1e84571e7d28197318aefc9b Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Thu, 6 Apr 2017 18:24:48 +0300 Subject: [PATCH] Move: Drop obsolete code --- .../KotlinMoveDirectoryWithClassesHelper.kt | 19 +++++++------------ .../MoveKotlinFileHandler.kt | 14 +++----------- 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/KotlinMoveDirectoryWithClassesHelper.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/KotlinMoveDirectoryWithClassesHelper.kt index 9d09c7baf91..d13468f073c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/KotlinMoveDirectoryWithClassesHelper.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/KotlinMoveDirectoryWithClassesHelper.kt @@ -43,7 +43,6 @@ class KotlinMoveDirectoryWithClassesHelper : MoveDirectoryWithClassesHelper() { private class MoveContext( val newParent: PsiDirectory, - val internalUsages: MoveKotlinFileHandler.InternalUsagesWrapper, val moveDeclarationsProcessor: MoveKotlinDeclarationsProcessor? ) @@ -52,11 +51,10 @@ class KotlinMoveDirectoryWithClassesHelper : MoveDirectoryWithClassesHelper() { private var fileToMoveContext: MutableMap? = null private fun getOrCreateMoveContextMap(): MutableMap { - return fileToMoveContext - ?: HashMap().apply { - fileToMoveContext = this + return fileToMoveContext ?: HashMap().apply { + fileToMoveContext = this invokeOnceOnCommandFinish { fileToMoveContext = null } - } + } } override fun findUsages( @@ -87,9 +85,7 @@ class KotlinMoveDirectoryWithClassesHelper : MoveDirectoryWithClassesHelper() { val moveDeclarationsProcessor = fileHandler.initMoveProcessor(file, moveDestination) val moveContextMap = getOrCreateMoveContextMap() - moveContextMap[file] = MoveContext(moveDestination, - fileHandler.findInternalUsages(file, moveDestination), - moveDeclarationsProcessor) + moveContextMap[file] = MoveContext(moveDestination, moveDeclarationsProcessor) if (moveDeclarationsProcessor != null) { moveDestination.getPackage()?.let { newPackage -> file.packageDirective?.fqName = FqName(newPackage.qualifiedName).quoteIfNeeded() @@ -105,7 +101,7 @@ class KotlinMoveDirectoryWithClassesHelper : MoveDirectoryWithClassesHelper() { override fun postProcessUsages(usages: Array, newDirMapper: Function) { val fileToMoveContext = fileToMoveContext ?: return try { - val usagesToProcessAfterMove = ArrayList() + val usagesToProcess = ArrayList() usages .filterIsInstance() .forEach body@ { @@ -117,10 +113,9 @@ class KotlinMoveDirectoryWithClassesHelper : MoveDirectoryWithClassesHelper() { val moveDeclarationsProcessor = moveContext.moveDeclarationsProcessor ?: return@body val movedFile = moveContext.newParent.findFile(file.name) ?: return@body - usagesToProcessAfterMove += - FileUsagesWrapper(movedFile, it.usages + moveContext.internalUsages, moveDeclarationsProcessor) + usagesToProcess += FileUsagesWrapper(movedFile, it.usages, moveDeclarationsProcessor) } - usagesToProcessAfterMove.forEach { fileHandler.retargetUsages(it.usages, it.moveDeclarationsProcessor!!) } + usagesToProcess.forEach { fileHandler.retargetUsages(it.usages, it.moveDeclarationsProcessor!!) } } finally { this.fileToMoveContext = null diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/MoveKotlinFileHandler.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/MoveKotlinFileHandler.kt index 994afb1a8fb..597ec8e165a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/MoveKotlinFileHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveFilesOrDirectories/MoveKotlinFileHandler.kt @@ -32,16 +32,15 @@ import org.jetbrains.kotlin.idea.core.getPackage import org.jetbrains.kotlin.idea.core.packageMatchesDirectory import org.jetbrains.kotlin.idea.core.quoteIfNeeded import org.jetbrains.kotlin.idea.refactoring.hasIdentifiersOnly -import org.jetbrains.kotlin.idea.refactoring.move.* +import org.jetbrains.kotlin.idea.refactoring.move.ContainerChangeInfo +import org.jetbrains.kotlin.idea.refactoring.move.ContainerInfo import org.jetbrains.kotlin.idea.refactoring.move.moveDeclarations.* +import org.jetbrains.kotlin.idea.refactoring.move.updatePackageDirective import org.jetbrains.kotlin.name.FqNameUnsafe import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtNamedDeclaration -import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull class MoveKotlinFileHandler : MoveFileHandler() { - internal class InternalUsagesWrapper(file: KtFile, val usages: List) : UsageInfo(file) - internal class FileInfo(file: KtFile) : UsageInfo(file) // This is special 'PsiElement' whose purpose is to wrap MoveKotlinTopLevelDeclarationsProcessor @@ -107,12 +106,6 @@ class MoveKotlinFileHandler : MoveFileHandler() { return !JavaProjectRootsUtil.isOutsideJavaSourceRoot(element) } - internal fun findInternalUsages(file: KtFile, newParent: PsiDirectory): InternalUsagesWrapper { - val packageNameInfo = file.getPackageNameInfo(newParent, false) - val usages = packageNameInfo?.let { file.getInternalReferencesToUpdateOnPackageNameChange(it) } ?: emptyList() - return InternalUsagesWrapper(file, usages) - } - override fun findUsages( psiFile: PsiFile, newParent: PsiDirectory?, @@ -149,7 +142,6 @@ class MoveKotlinFileHandler : MoveFileHandler() { } fun retargetUsages(usageInfos: List?, moveDeclarationsProcessor: MoveKotlinDeclarationsProcessor) { - postProcessMoveUsages(usageInfos?.firstIsInstanceOrNull()?.usages ?: emptyList()) moveDeclarationsProcessor.project.runRefactoringAndKeepDelayedRequests { usageInfos?.let { moveDeclarationsProcessor.execute(it) } }