From 3213df1841360a4ddf54f505c54e19d4e4a1498b Mon Sep 17 00:00:00 2001 From: Pasin Suriyentrakorn Date: Tue, 9 Jun 2026 19:51:59 -0700 Subject: [PATCH] Fix using var and PDM SingularField warning in Document class MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * As var is unavailable for source Java 8 source level, use FLDict type explicitly. * Made local data variable in Document’s setContent() final per check style warning. * Suppress the PMD SingularField warning on extraBackingStore, which is written but never read. It cannot be made a local variable as PMD suggests because it is for keeping the native Fleece backing store from being GC’d while the Document is alive. --- common/main/java/com/couchbase/lite/Document.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/main/java/com/couchbase/lite/Document.java b/common/main/java/com/couchbase/lite/Document.java index fb8e6922f..e62e871dd 100644 --- a/common/main/java/com/couchbase/lite/Document.java +++ b/common/main/java/com/couchbase/lite/Document.java @@ -136,6 +136,7 @@ static Document getDocumentWithRevisions(@NonNull Collection collection, @NonNul // Set by setData(FLSliceResult,boolean) to keep the Fleece backing store from being GC'd. // (This is kind of a hack, and it's only used ephemerally by Kotlin serialization.) + @SuppressWarnings("PMD.SingularField") @GuardedBy("lock") @Nullable private FLSliceResult extraBackingStore; @@ -632,7 +633,7 @@ private void setC4Document(@Nullable C4Document c4doc, boolean mutable) { // for use by CollectionExtensions.kt void setContent(@NonNull FLSliceResult fleeceData, boolean mutable) { synchronized (lock) { - var data = FLValue.fromData(fleeceData).asFLDict(); + final FLDict data = FLValue.fromData(fleeceData).asFLDict(); extraBackingStore = fleeceData; setContentLocked(data, mutable); }