diff --git a/src/main/java/org/openrewrite/java/migrate/lang/ExtractExplicitConstructorInvocationArguments.java b/src/main/java/org/openrewrite/java/migrate/lang/ExtractExplicitConstructorInvocationArguments.java index 8dc1eb1151..b6a7ef7e02 100644 --- a/src/main/java/org/openrewrite/java/migrate/lang/ExtractExplicitConstructorInvocationArguments.java +++ b/src/main/java/org/openrewrite/java/migrate/lang/ExtractExplicitConstructorInvocationArguments.java @@ -20,7 +20,6 @@ import org.openrewrite.ExecutionContext; import org.openrewrite.Preconditions; import org.openrewrite.Recipe; -import org.openrewrite.SourceFile; import org.openrewrite.Tree; import org.openrewrite.TreeVisitor; import org.openrewrite.internal.ListUtils; @@ -35,6 +34,7 @@ import org.openrewrite.java.tree.Statement; import org.openrewrite.java.tree.TypeTree; import org.openrewrite.java.tree.TypeUtils; +import org.openrewrite.staticanalysis.java.JavaFileChecker; import java.util.*; @@ -62,14 +62,11 @@ public class ExtractExplicitConstructorInvocationArguments extends Recipe { @Override public TreeVisitor getVisitor() { - return Preconditions.check(new UsesJavaVersion<>(25), new JavaIsoVisitor() { - @Override - public boolean isAcceptable(SourceFile sourceFile, ExecutionContext ctx) { + return Preconditions.check(Preconditions.and( // JEP 513 is a Java language feature, and the rewrite is expressed as a `JavaTemplate`, which // parses its stub as Java. Other JVM languages sharing the Java LST are therefore out of scope. - return sourceFile instanceof J.CompilationUnit; - } - + new JavaFileChecker<>(), + new UsesJavaVersion<>(25)), new JavaIsoVisitor() { @Override public J.MethodDeclaration visitMethodDeclaration(J.MethodDeclaration method, ExecutionContext ctx) { J.MethodDeclaration md = super.visitMethodDeclaration(method, ctx);