diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspection.java deleted file mode 100644 index f64d3f94600e..000000000000 --- a/plugins/InspectionGadgets/src/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspection.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Copyright 2003-2012 Dave Griffith, Bas Leijdekkers - * - * 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 - * - * http://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 com.siyeh.ig.serialization; - -import com.intellij.codeInspection.ProblemDescriptor; -import com.intellij.openapi.project.Project; -import com.intellij.psi.CommonClassNames; -import com.intellij.psi.PsiClass; -import com.intellij.psi.PsiExpression; -import com.intellij.psi.PsiField; -import com.intellij.psi.util.InheritanceUtil; -import com.siyeh.InspectionGadgetsBundle; -import com.siyeh.ig.BaseInspectionVisitor; -import com.siyeh.ig.InspectionGadgetsFix; -import com.siyeh.ig.fixes.SerialVersionUIDBuilder; -import com.siyeh.ig.psiutils.CommentTracker; -import com.siyeh.ig.psiutils.ExpressionUtils; -import org.jetbrains.annotations.Nls; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import javax.swing.*; - -public class SerializableCanHaveDefaultSerialUIDInspection extends SerializableInspectionBase { - @Override - public JComponent createOptionsPanel() { - return SerializableInspectionUtil.createOptions(this); - } - - @Nls - @NotNull - @Override - public String getDisplayName() { - return InspectionGadgetsBundle.message("inspection.serializable.can.have.default.serial.uid"); - } - - @Nullable - @Override - protected InspectionGadgetsFix buildFix(Object... infos) { - return new ChangeSerialUidToDefaultFix((Long)infos[0]); - } - - @NotNull - @Override - protected String buildErrorString(Object... infos) { - return InspectionGadgetsBundle.message("inspection.serializable.can.have.default.serial.uid.message"); - } - - @Override - public BaseInspectionVisitor buildVisitor() { - return new BaseInspectionVisitor() { - @Override - public void visitField(PsiField field) { - if (!"serialVersionUID".equals(field.getName())) return; - PsiExpression initializer = field.getInitializer(); - Object initializerResult = ExpressionUtils.computeConstantExpression(initializer); - if (!(initializerResult instanceof Long)) return; - PsiClass aClass = field.getContainingClass(); - if (aClass == null) return; - if (!InheritanceUtil.isInheritor(aClass, CommonClassNames.JAVA_IO_SERIALIZABLE)) return; - long suid = SerialVersionUIDBuilder.computeDefaultSUID(aClass); - if (((Number)initializerResult).longValue() == suid) return; - registerError(initializer, suid); - } - }; - } - - private static class ChangeSerialUidToDefaultFix extends InspectionGadgetsFix { - private final long mySerialUid; - - private ChangeSerialUidToDefaultFix(long uid) {mySerialUid = uid;} - - @Nls(capitalization = Nls.Capitalization.Sentence) - @NotNull - @Override - public String getName() { - return getFamilyName(); - } - - @Nls(capitalization = Nls.Capitalization.Sentence) - @NotNull - @Override - public String getFamilyName() { - return InspectionGadgetsBundle.message("inspection.serializable.can.have.default.serial.uid.fix.name"); - } - - @Override - protected void doFix(Project project, ProblemDescriptor descriptor) { - new CommentTracker().replaceAndRestoreComments(descriptor.getStartElement(), String.valueOf(mySerialUid) + "L"); - } - } -} diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/SerializableHasSerialVersionUIDField.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/SerializableHasSerialVersionUIDField.java deleted file mode 100644 index 8236b5d08ca1..000000000000 --- a/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/SerializableHasSerialVersionUIDField.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.siyeh.igtest.serialization.serializable_can_have_default_serial_uid; - -import java.io.Serializable; - -public class Serial implements Serializable { - private static final long serialVersionUID = 123L; - - void foo() {} - - int m = 2; -} \ No newline at end of file diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/expected.xml b/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/expected.xml deleted file mode 100644 index 29db5f572629..000000000000 --- a/plugins/InspectionGadgets/test/com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid/expected.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - SerializableHasSerialVersionUIDField.java - 6 - com.siyeh.igtest.serialization.serializable_can_have_default_serial_uid - 'Serializable' can have default generated 'serialVersionUID' - 'serialVersionUID' differs from default generated - - - \ No newline at end of file diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/serialization/ChangeSerialUidToDefaultFixTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/serialization/ChangeSerialUidToDefaultFixTest.java deleted file mode 100644 index f21fd498cbb3..000000000000 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/serialization/ChangeSerialUidToDefaultFixTest.java +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -package com.siyeh.ig.fixes.serialization; - -import com.siyeh.InspectionGadgetsBundle; -import com.siyeh.ig.IGQuickFixesTestCase; -import com.siyeh.ig.serialization.SerializableCanHaveDefaultSerialUIDInspection; - -public class ChangeSerialUidToDefaultFixTest extends IGQuickFixesTestCase { - - @Override - public void setUp() throws Exception { - super.setUp(); - myFixture.enableInspections(new SerializableCanHaveDefaultSerialUIDInspection()); - myRelativePath = "serialization/changeSerialVersionUID"; - myDefaultHint = InspectionGadgetsBundle.message("inspection.serializable.can.have.default.serial.uid.fix.name"); - } - - public void testSerial() { doTest(); } -} diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspectionTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspectionTest.java deleted file mode 100644 index 6e37bc285baa..000000000000 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/serialization/SerializableCanHaveDefaultSerialUIDInspectionTest.java +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -package com.siyeh.ig.serialization; - -import com.siyeh.ig.IGInspectionTestCase; - -public class SerializableCanHaveDefaultSerialUIDInspectionTest - extends IGInspectionTestCase { - - public void test() { - doTest("com/siyeh/igtest/serialization/serializable_can_have_default_serial_uid", - new SerializableCanHaveDefaultSerialUIDInspection()); - } -} \ No newline at end of file