From bef9ded5431cef64ae0572709a2e657b10a26913 Mon Sep 17 00:00:00 2001 From: StefanSpieker Date: Sat, 11 Jan 2020 00:04:02 +0100 Subject: [PATCH] [JENKINS-36720] - Fix Spotbugs issues (SE_COMPARATOR_SHOULD_BE_SERIALIZABLE, ES_COMPARING_STRINGS_WITH_EQ) (#4379) * fixed Spotbugs issues (SE_COMPARATOR_SHOULD_BE_SERIALIZABLE, ES_COMPARING_STRINGS_WITH_EQ) * replaced wildcard import with specific imports * added missing import * fixed spotbugs issues * removed accidently added import --- core/src/main/java/hudson/Functions.java | 15 +++++++++++---- .../src/main/java/hudson/logging/LogRecorder.java | 5 ++++- core/src/main/java/hudson/model/Label.java | 5 ++++- .../main/java/hudson/model/TimeZoneProperty.java | 2 +- core/src/main/java/hudson/tasks/Publisher.java | 4 ++++ core/src/main/java/jenkins/model/IdStrategy.java | 13 ++++++++++--- 6 files changed, 34 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index 900cf8be84..50339569b6 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -84,9 +84,12 @@ import hudson.views.MyViewsTabBar; import hudson.views.ViewsTabBar; import hudson.widgets.RenderOnDemandClosure; + import java.io.File; import java.io.IOException; +import java.io.PrintStream; import java.io.PrintWriter; +import java.io.Serializable; import java.io.StringWriter; import java.io.UnsupportedEncodingException; import java.lang.management.LockInfo; @@ -158,7 +161,7 @@ import com.google.common.base.Predicate; import com.google.common.base.Predicates; import hudson.model.PasswordParameterDefinition; import hudson.util.RunList; -import java.io.PrintStream; + import java.util.HashSet; import java.util.Set; import java.util.concurrent.atomic.AtomicLong; @@ -1310,7 +1313,7 @@ public class Functions { private static class ThreadSorterBase { protected Map map = new HashMap<>(); - private ThreadSorterBase() { + public ThreadSorterBase() { ThreadGroup tg = Thread.currentThread().getThreadGroup(); while (tg.getParent() != null) tg = tg.getParent(); Thread[] threads = new Thread[tg.activeCount()*2]; @@ -1330,7 +1333,9 @@ public class Functions { } } - public static class ThreadGroupMap extends ThreadSorterBase implements Comparator { + public static class ThreadGroupMap extends ThreadSorterBase implements Comparator, Serializable { + + private static final long serialVersionUID = 7803975728695308444L; /** * @return ThreadGroup name or null if unknown @@ -1347,7 +1352,9 @@ public class Functions { } } - private static class ThreadSorter extends ThreadSorterBase implements Comparator { + private static class ThreadSorter extends ThreadSorterBase implements Comparator, Serializable { + + private static final long serialVersionUID = 5053631350439192685L; public int compare(Thread a, Thread b) { int result = compare(a.getId(), b.getId()); diff --git a/core/src/main/java/hudson/logging/LogRecorder.java b/core/src/main/java/hudson/logging/LogRecorder.java index 61bb1bb187..c6ec3e1b41 100644 --- a/core/src/main/java/hudson/logging/LogRecorder.java +++ b/core/src/main/java/hudson/logging/LogRecorder.java @@ -50,6 +50,7 @@ import org.kohsuke.stapler.interceptor.RequirePOST; import javax.servlet.ServletException; import java.io.File; import java.io.IOException; +import java.io.Serializable; import java.text.Collator; import java.util.*; import java.util.logging.Level; @@ -252,7 +253,9 @@ public class LogRecorder extends AbstractModelObject implements Saveable { } - private static class TargetComparator implements Comparator { + private static class TargetComparator implements Comparator, Serializable { + + private static final long serialVersionUID = 9285340752515798L; @Override public int compare(Target left, Target right) { diff --git a/core/src/main/java/hudson/model/Label.java b/core/src/main/java/hudson/model/Label.java index a057215483..ddf419604a 100644 --- a/core/src/main/java/hudson/model/Label.java +++ b/core/src/main/java/hudson/model/Label.java @@ -55,6 +55,7 @@ import org.kohsuke.stapler.StaplerResponse; import org.kohsuke.stapler.export.Exported; import org.kohsuke.stapler.export.ExportedBean; +import java.io.Serializable; import java.io.StringReader; import java.util.ArrayList; import java.util.Collection; @@ -203,7 +204,9 @@ public abstract class Label extends Actionable implements Comparable