From dfd9884eaa6c59b5c1b9b895b35e2755a7ca58dd Mon Sep 17 00:00:00 2001 From: Ulli Hafner Date: Tue, 14 Apr 2026 11:04:58 +0200 Subject: [PATCH] Restore serialization to use interfaces again Changing the fields to serializable classes breaks the existing serializations. --- etc/pmd-java-configuration.xml | 1 - pom.xml | 7 +++++++ src/main/java/edu/hm/hafner/util/FilteredLog.java | 8 ++++---- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/etc/pmd-java-configuration.xml b/etc/pmd-java-configuration.xml index 3c8cabff..aac62fb8 100644 --- a/etc/pmd-java-configuration.xml +++ b/etc/pmd-java-configuration.xml @@ -21,7 +21,6 @@ - diff --git a/pom.xml b/pom.xml index 55ec6d25..1d2243ee 100644 --- a/pom.xml +++ b/pom.xml @@ -1012,6 +1012,13 @@ edu.hm.hafner.util.SuppressMutation.* PitMute Annotations are not relevant in API + + true + true + java.field.serialVersionUIDUnchanged + FilteredLog + We are using the interface which still serializes correctly. + diff --git a/src/main/java/edu/hm/hafner/util/FilteredLog.java b/src/main/java/edu/hm/hafner/util/FilteredLog.java index e446025d..86ba3e70 100644 --- a/src/main/java/edu/hm/hafner/util/FilteredLog.java +++ b/src/main/java/edu/hm/hafner/util/FilteredLog.java @@ -31,10 +31,10 @@ public class FilteredLog implements Serializable { private final int maxLines; private int lines; - @SuppressWarnings("PMD.LooseCoupling") - private final ArrayList infoMessages = new ArrayList<>(); - @SuppressWarnings("PMD.LooseCoupling") - private final ArrayList errorMessages = new ArrayList<>(); + @SuppressWarnings("serial") + private final List infoMessages = new ArrayList<>(); + @SuppressWarnings("serial") + private final List errorMessages = new ArrayList<>(); private transient ReentrantLock lock = new ReentrantLock();