Removing import of removed package facade.
This commit is contained in:
@@ -163,8 +163,19 @@ public fun JetNamedDeclaration.getFileNameAfterMove(): String? {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// returns true if successful
|
// returns true if successful
|
||||||
private fun updateJavaReference(reference: PsiReferenceExpression, newElement: PsiElement): Boolean {
|
private fun updateJavaReference(reference: PsiReferenceExpression, oldElement: PsiElement, newElement: PsiElement): Boolean {
|
||||||
if (newElement is PsiMember) {
|
if (oldElement is PsiMember && newElement is PsiMember) {
|
||||||
|
// Remove import of old package facade, if any
|
||||||
|
val oldClassName = oldElement.getContainingClass()?.getQualifiedName()
|
||||||
|
if (oldClassName != null) {
|
||||||
|
val importOfOldClass = (reference.getContainingFile() as? PsiJavaFile)?.getImportList()?.getImportStatements()?.firstOrNull {
|
||||||
|
it.getQualifiedName() == oldClassName
|
||||||
|
}
|
||||||
|
if (importOfOldClass != null && importOfOldClass.resolve() == null) {
|
||||||
|
importOfOldClass.delete()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
val newClass = newElement.getContainingClass()
|
val newClass = newElement.getContainingClass()
|
||||||
if (newClass != null && reference.getQualifierExpression() != null) {
|
if (newClass != null && reference.getQualifierExpression() != null) {
|
||||||
val mockMoveMembersOptions = MockMoveMembersOptions(newClass.getQualifiedName(), array(newElement))
|
val mockMoveMembersOptions = MockMoveMembersOptions(newClass.getQualifiedName(), array(newElement))
|
||||||
@@ -231,7 +242,7 @@ fun postProcessMoveUsages(usages: List<UsageInfo>,
|
|||||||
if (it is JetSimpleNameReference) {
|
if (it is JetSimpleNameReference) {
|
||||||
it.bindToElement(newElement, shorteningMode)
|
it.bindToElement(newElement, shorteningMode)
|
||||||
}
|
}
|
||||||
else if (it is PsiReferenceExpression && updateJavaReference(it, newElement)) {
|
else if (it is PsiReferenceExpression && updateJavaReference(it, oldElement, newElement)) {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
it.bindToElement(newElement)
|
it.bindToElement(newElement)
|
||||||
|
|||||||
-2
@@ -1,6 +1,4 @@
|
|||||||
// TODO Import of old package stays here because of a bug
|
|
||||||
import newPackage.NewPackagePackage;
|
import newPackage.NewPackagePackage;
|
||||||
import oldPackage.OldPackagePackage;
|
|
||||||
|
|
||||||
class JavaUsage {
|
class JavaUsage {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|||||||
-1
@@ -1,4 +1,3 @@
|
|||||||
// TODO Import of old package stays here because of a bug
|
|
||||||
import oldPackage.OldPackagePackage;
|
import oldPackage.OldPackagePackage;
|
||||||
|
|
||||||
class JavaUsage {
|
class JavaUsage {
|
||||||
|
|||||||
Reference in New Issue
Block a user