diff --git a/src/main/java/org/openrewrite/java/migrate/RemoveMethodInvocation.java b/src/main/java/org/openrewrite/java/migrate/RemoveMethodInvocation.java deleted file mode 100644 index af1305142..000000000 --- a/src/main/java/org/openrewrite/java/migrate/RemoveMethodInvocation.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2023 the original author or authors. - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * https://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.openrewrite.java.migrate; - -import lombok.EqualsAndHashCode; -import lombok.Value; -import org.openrewrite.ExecutionContext; -import org.openrewrite.Option; -import org.openrewrite.Recipe; -import org.openrewrite.TreeVisitor; -import org.openrewrite.java.MethodMatcher; -import org.openrewrite.staticanalysis.RemoveMethodCallVisitor; - -@Value -@EqualsAndHashCode(callSuper = false) -public class RemoveMethodInvocation extends Recipe { - @Option(displayName = "Method Pattern", - description = "A method pattern for matching required method definition.", - example = "*..* hello(..)") - String methodPattern; - - @Override - public String getDisplayName() { - return "Remove methods calls"; - } - - @Override - public String getDescription() { - return "Checks for a method patterns and removes the method call from the class."; - } - - @Override - public TreeVisitor getVisitor() { - return new RemoveMethodCallVisitor<>(new MethodMatcher(methodPattern), (n, it) -> true); - } -} diff --git a/src/main/resources/META-INF/rewrite/jakarta-ee-10.yml b/src/main/resources/META-INF/rewrite/jakarta-ee-10.yml index 0258eb036..6ade3e3ca 100644 --- a/src/main/resources/META-INF/rewrite/jakarta-ee-10.yml +++ b/src/main/resources/META-INF/rewrite/jakarta-ee-10.yml @@ -42,21 +42,21 @@ type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.jakarta.ServletCookieBehaviorChangeRFC6265 displayName: Remove `getComment` and `getVersion` methods description: >- - Jakarta Servlet methods have been deprecated for removal in Jakarta Servlet 6.0 to align with RFC 6265. + Jakarta Servlet methods have been deprecated for removal in Jakarta Servlet 6.0 to align with RFC 6265. In addition, the behavior of these methods has been changed so the setters no longer have any effect, the getComment methods return null, and the getVersion method returns 0. The deprecated methods are removed. recipeList: - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.http.Cookie getComment() - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.http.Cookie getVersion() - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.http.Cookie setComment(String) - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.http.Cookie setVersion(int) - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.SessionCookieConfig getComment() - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: jakarta.servlet.SessionCookieConfig setComment(String) --- type: specs.openrewrite.org/v1beta/recipe @@ -75,7 +75,7 @@ type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.jakarta.RemovedIsParmetersProvidedMethod displayName: Use `isParametersProvided()` description: >- - Expression Language prior to 5.0 provides the deprecated MethodExpression.isParmetersProvided() method, with the word 'parameter' misspelled in the method name. + Expression Language prior to 5.0 provides the deprecated MethodExpression.isParmetersProvided() method, with the word 'parameter' misspelled in the method name. This method is unavailable in Jakarta Expression Language 5.0. Use the correctly spelled MethodExpression.isParametersProvided() method instead. recipeList: - org.openrewrite.java.ChangeMethodName: @@ -86,7 +86,7 @@ type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.jakarta.RemovedSOAPElementFactory displayName: Use `jakarta.xml.soap.SOAPFactory` to create `SOAPElements` description: >- - XML Web Services prior to 4.0 provides the deprecated SOAPElementFactory class, + XML Web Services prior to 4.0 provides the deprecated SOAPElementFactory class, which is removed in XML Web Services 4.0. The recommended replacement is to use jakarta.xml.soap.SOAPFactory to create SOAPElements. recipeList: - org.openrewrite.java.ChangeMethodName: diff --git a/src/main/resources/META-INF/rewrite/java-version-11.yml b/src/main/resources/META-INF/rewrite/java-version-11.yml index 5298d4287..ed2edac24 100644 --- a/src/main/resources/META-INF/rewrite/java-version-11.yml +++ b/src/main/resources/META-INF/rewrite/java-version-11.yml @@ -43,9 +43,9 @@ recipeList: - org.openrewrite.staticanalysis.PrimitiveWrapperClassConstructorToValueOf - org.openrewrite.java.migrate.concurrent.JavaConcurrentAPIs - org.openrewrite.java.migrate.lang.JavaLangAPIs - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.lang.Runtime runFinalizersOnExit(boolean) - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.lang.System runFinalizersOnExit(boolean) - org.openrewrite.java.migrate.logging.JavaLoggingAPIs - org.openrewrite.java.migrate.lombok.UpdateLombokToJava11 @@ -268,9 +268,9 @@ description: >- tags: - java11 recipeList: - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.lang.Thread destroy() - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.lang.Thread stop(java.lang.Throwable) --- type: specs.openrewrite.org/v1beta/recipe diff --git a/src/main/resources/META-INF/rewrite/java-version-17.yml b/src/main/resources/META-INF/rewrite/java-version-17.yml index bc357911a..e16fded78 100644 --- a/src/main/resources/META-INF/rewrite/java-version-17.yml +++ b/src/main/resources/META-INF/rewrite/java-version-17.yml @@ -226,7 +226,7 @@ description: >- tags: - java17 recipeList: - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Thread countStackFrames()' --- type: specs.openrewrite.org/v1beta/recipe @@ -281,7 +281,7 @@ description: >- tags: - java17 recipeList: - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Runtime traceInstructions(boolean)' - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Runtime traceMethodCalls(boolean)' diff --git a/src/main/resources/META-INF/rewrite/java-version-21.yml b/src/main/resources/META-INF/rewrite/java-version-21.yml index 5a7c6ca4c..859c12d63 100644 --- a/src/main/resources/META-INF/rewrite/java-version-21.yml +++ b/src/main/resources/META-INF/rewrite/java-version-21.yml @@ -102,7 +102,7 @@ type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedSubjectMethods displayName: Adopt `javax.security.auth.Subject.current()` and `javax.security.auth.Subject.callAs()` methods` description: >- - Replaces the `javax.security.auth.Subject.getSubject()` and `javax.security.auth.Subject.doAs()` methods + Replaces the `javax.security.auth.Subject.getSubject()` and `javax.security.auth.Subject.doAs()` methods with `javax.security.auth.Subject.current()` and `javax.security.auth.Subject.callAs()`. tags: - java21 @@ -121,9 +121,9 @@ description: The java.desktop module had a few implementations of finalize() tha tags: - java21 recipeList: - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.awt.color.ICC_Profile finalize() - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.awt.image.ColorModel finalize() - - org.openrewrite.java.migrate.RemoveMethodInvocation: - methodPattern: java.awt.image.IndexColorModel finalize() \ No newline at end of file + - org.openrewrite.java.RemoveMethodInvocations: + methodPattern: java.awt.image.IndexColorModel finalize() diff --git a/src/main/resources/META-INF/rewrite/java-version-8.yml b/src/main/resources/META-INF/rewrite/java-version-8.yml index 11e4d37dc..c0e95c5cd 100644 --- a/src/main/resources/META-INF/rewrite/java-version-8.yml +++ b/src/main/resources/META-INF/rewrite/java-version-8.yml @@ -25,5 +25,5 @@ tags: recipeList: - org.openrewrite.java.migrate.UpgradeToJava7 - org.openrewrite.java.migrate.MXBeanRule - - org.openrewrite.java.migrate.RemoveMethodInvocation: + - org.openrewrite.java.RemoveMethodInvocations: methodPattern: java.lang.Thread destroy() diff --git a/src/test/java/org/openrewrite/java/migrate/RemoveMethodInvocationTest.java b/src/test/java/org/openrewrite/java/migrate/RemoveMethodInvocationTest.java deleted file mode 100644 index 95f7a51c7..000000000 --- a/src/test/java/org/openrewrite/java/migrate/RemoveMethodInvocationTest.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright 2023 the original author or authors. - *

- * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * https://www.apache.org/licenses/LICENSE-2.0 - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.openrewrite.java.migrate; - -import org.junit.jupiter.api.Test; -import org.openrewrite.DocumentExample; -import org.openrewrite.test.RecipeSpec; -import org.openrewrite.test.RewriteTest; - -import static org.openrewrite.java.Assertions.java; - -class RemoveMethodInvocationTest implements RewriteTest { - @Override - public void defaults(RecipeSpec spec) { - spec.recipe(new RemoveMethodInvocation("java.lang.System getProperty(String)")); - } - - @DocumentExample - @Test - void removeMethodInvocation() { - rewriteRun( - //language=java - java( - """ - class Test { - void test() { - System.getProperty("user.dir"); - } - } - """, - """ - class Test { - void test() { - } - } - """ - ) - ); - } - - @Test - void mismatchParameters() { - rewriteRun( - //language=java - java( - """ - class Test { - void test() { - System.getProperty("user.dir", "/home/user"); - } - } - """ - ) - ); - } -}