Move: Drop Java on-demand static imports of facade class members when original facade is eliminated due to Move refactoring
#KT-9624 Fixed
This commit is contained in:
committed by
Alexey Sedunov
parent
5dc0e7f2d5
commit
ca87e7933f
@@ -209,8 +209,12 @@ private fun updateJavaReference(reference: PsiReferenceExpression, oldElement: P
|
||||
// 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
|
||||
val importOfOldClass = (reference.containingFile as? PsiJavaFile)?.importList?.allImportStatements?.firstOrNull {
|
||||
when (it) {
|
||||
is PsiImportStatement -> it.qualifiedName == oldClassName
|
||||
is PsiImportStaticStatement -> it.isOnDemand && it.importReference?.canonicalText == oldClassName
|
||||
else -> false
|
||||
}
|
||||
}
|
||||
if (importOfOldClass != null && importOfOldClass.resolve() == null) {
|
||||
importOfOldClass.delete()
|
||||
|
||||
-2
@@ -2,8 +2,6 @@ package a;
|
||||
|
||||
import b.Test;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
Test t = new Test();
|
||||
|
||||
-2
@@ -2,8 +2,6 @@ package c;
|
||||
|
||||
import b.Test;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
Test t = new Test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test(new Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test(new a.Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test(new a.Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.getTest(new Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.getTest(new a.Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.getTest(new a.Test());
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.test();
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.setTest("");
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.setTest("");
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.DependencyKt.setTest("");
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package a;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.setTest("");
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package b;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.setTest("");
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package c;
|
||||
|
||||
import static a.MainKt.*;
|
||||
|
||||
class J {
|
||||
void bar() {
|
||||
b.TestKt.setTest("");
|
||||
|
||||
Reference in New Issue
Block a user