Sprinkle @Serial annotations on yang-data-api 21/102121/3
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 17 Aug 2022 08:01:23 +0000 (10:01 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 17 Aug 2022 08:56:59 +0000 (10:56 +0200)
We are about to move forward on serialization, make sure the methods are
properly annotated.

Change-Id: I3613ab4436d4503a0117983d5e4cd3254e48b95d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
13 files changed:
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/AIv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/DSIv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/DatastoreIdentifier.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/FixedYangInstanceIdentifier.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/NIPv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/NIPv2.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/NIVv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/NIv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/StackedYangInstanceIdentifier.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/YIDv1.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/YangInstanceIdentifier.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/codec/YangInvalidValueException.java
data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/AnydataNormalizationException.java

index 939599cd41f72fab319d9ec5ca6ff6771f70ac3f..e1f4fea87bda5e51e9715b75916970dc4871db88 100644 (file)
@@ -14,6 +14,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier;
 
@@ -21,6 +22,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.Augmentat
  * Externalizable proxy for {@link AugmentationIdentifier}.
  */
 final class AIv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private AugmentationIdentifier ai;
@@ -52,6 +54,7 @@ final class AIv1 implements Externalizable {
         ai = new AugmentationIdentifier(ImmutableSet.copyOf(qnames));
     }
 
+    @Serial
     private Object readResolve() {
         return ai;
     }
index d2348e0b2a88fef4f36dd808cc57e45fd53d48a7..b0afdddfca874346416e6ee2b2643f5c7594c7c7 100644 (file)
@@ -13,10 +13,12 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QName;
 
 final class DSIv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private QName qname;
@@ -40,6 +42,7 @@ final class DSIv1 implements Externalizable {
         qname = QName.readFrom(in);
     }
 
+    @Serial
     private Object readResolve() {
         return DatastoreIdentifier.create(qname);
     }
index 172bbc8d0d6ca3a009a5cc86223f49a3dbfc8733..72f0f31731bac026110e41beb258822018b0753a 100644 (file)
@@ -17,6 +17,7 @@ import com.google.common.collect.ImmutableSet;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
+import java.io.Serial;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.opendaylight.yangtools.concepts.WritableObject;
 import org.opendaylight.yangtools.util.AbstractIdentifier;
@@ -31,6 +32,7 @@ import org.opendaylight.yangtools.yang.common.XMLNamespace;
 @Beta
 @NonNullByDefault
 public final class DatastoreIdentifier extends AbstractIdentifier<QName> implements WritableObject {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private static final XMLNamespace IETF_DATASTORES_NAMESPACE =
@@ -71,6 +73,7 @@ public final class DatastoreIdentifier extends AbstractIdentifier<QName> impleme
         getValue().writeTo(out);
     }
 
+    @Serial
     private Object writeReplace() {
         return new DSIv1(getValue());
     }
index 4a10de47a31492c71443a31b158add3f5b830212..33b5003d9c6841ea32ee78a5fb64175e8618506f 100644 (file)
@@ -13,6 +13,7 @@ import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
 import java.io.ObjectStreamException;
+import java.io.Serial;
 import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.util.HashCodeBuilder;
@@ -20,6 +21,7 @@ import org.opendaylight.yangtools.util.HashCodeBuilder;
 final class FixedYangInstanceIdentifier extends YangInstanceIdentifier implements Cloneable {
     static final @NonNull FixedYangInstanceIdentifier EMPTY_INSTANCE = new FixedYangInstanceIdentifier(
         ImmutableList.of());
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private final ImmutableList<PathArgument> path;
@@ -117,6 +119,7 @@ final class FixedYangInstanceIdentifier extends YangInstanceIdentifier implement
             : new FixedYangInstanceIdentifier(path.subList(skipFromRoot, path.size()));
     }
 
+    @Serial
     private Object readResolve() throws ObjectStreamException {
         return path.isEmpty() ? EMPTY_INSTANCE : this;
     }
index de051e504c9e7a21fc38e122d9769384b6b55378..f687f3c6aa44e71c8d330c5c4fcb9a04686f326f 100644 (file)
@@ -13,6 +13,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import java.util.Map;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
@@ -24,6 +25,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent
  */
 @Deprecated(since = "4.0.0", forRemoval = true)
 final class NIPv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private NodeIdentifierWithPredicates nip;
@@ -34,7 +36,7 @@ final class NIPv1 implements Externalizable {
     }
 
     NIPv1(final NodeIdentifierWithPredicates nid) {
-        this.nip = requireNonNull(nid);
+        nip = requireNonNull(nid);
     }
 
     @Override
@@ -49,6 +51,7 @@ final class NIPv1 implements Externalizable {
         nip = NodeIdentifierWithPredicates.of(qname, (Map<QName, Object>) in.readObject());
     }
 
+    @Serial
     private Object readResolve() {
         return nip;
     }
index db57bbe80eb62c9a670229322e627fba39919a7b..838ad1a387d3b8ca00c26ba098c8f0721a3c0f94 100644 (file)
@@ -14,6 +14,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import java.util.Map.Entry;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
@@ -22,6 +23,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent
  * Externalizable proxy for {@link NodeIdentifierWithPredicates}.
  */
 final class NIPv2 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private NodeIdentifierWithPredicates nip;
@@ -63,6 +65,7 @@ final class NIPv2 implements Externalizable {
         };
     }
 
+    @Serial
     private Object readResolve() {
         return nip;
     }
index a79adee33957d8deff0c6f2a73dd34f77073dc2b..17d32fb3c3da6af4c31450a20f9a4ae49a9d2849 100644 (file)
@@ -13,6 +13,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue;
 
@@ -20,6 +21,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithV
  * Externalizable proxy for {@link NodeWithValue}.
  */
 final class NIVv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private NodeWithValue<?> niv;
@@ -44,6 +46,7 @@ final class NIVv1 implements Externalizable {
         niv = new NodeWithValue<>(QName.readFrom(in), in.readObject());
     }
 
+    @Serial
     private Object readResolve() {
         return niv;
     }
index bc587881dbf35ebd8b5062ad34e8f196da40d647..018d4f474dca7ad70efa6e9815b81f32e827738e 100644 (file)
@@ -13,6 +13,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 
@@ -20,6 +21,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent
  * Externalizable proxy for {@link NodeIdentifier}.
  */
 final class NIv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private NodeIdentifier nid;
@@ -43,6 +45,7 @@ final class NIv1 implements Externalizable {
         nid = new NodeIdentifier(QName.readFrom(in));
     }
 
+    @Serial
     private Object readResolve() {
         return nid;
     }
index b2cc4497da9eb7d41d6be587c1d022706f8a0964..2944440aea24cceec823e90cc99e55e28894699f 100644 (file)
@@ -17,6 +17,7 @@ import com.google.common.collect.Lists;
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
+import java.io.Serial;
 import java.lang.reflect.Field;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
@@ -26,6 +27,7 @@ import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.util.HashCodeBuilder;
 
 final class StackedYangInstanceIdentifier extends YangInstanceIdentifier implements Cloneable {
+    @Serial
     private static final long serialVersionUID = 1L;
     private static final Field PARENT_FIELD;
 
@@ -169,13 +171,13 @@ final class StackedYangInstanceIdentifier extends YangInstanceIdentifier impleme
 
     @Override
     boolean pathArgumentsEqual(final YangInstanceIdentifier other) {
-        if (other instanceof StackedYangInstanceIdentifier) {
-            final StackedYangInstanceIdentifier stacked = (StackedYangInstanceIdentifier) other;
+        if (other instanceof StackedYangInstanceIdentifier stacked) {
             return pathArgument.equals(stacked.pathArgument) && parent.equals(stacked.parent);
         }
         return super.pathArgumentsEqual(other);
     }
 
+    @Serial
     private void readObject(final ObjectInputStream inputStream) throws IOException, ClassNotFoundException {
         inputStream.defaultReadObject();
 
@@ -187,6 +189,7 @@ final class StackedYangInstanceIdentifier extends YangInstanceIdentifier impleme
         }
     }
 
+    @Serial
     private void writeObject(final ObjectOutputStream outputStream) throws IOException {
         outputStream.defaultWriteObject();
 
index 58d914d419a9de12b906913fff8d8341ad18c512..dfee9deced799bc16f1e0a69434529ea7d5f1c77 100644 (file)
@@ -15,6 +15,7 @@ import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Serial;
 import java.util.List;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 
@@ -22,6 +23,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum
  * Externalizable proxy for {@link YangInstanceIdentifier}.
  */
 final class YIDv1 implements Externalizable {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private YangInstanceIdentifier yid;
@@ -56,6 +58,7 @@ final class YIDv1 implements Externalizable {
         yid = YangInstanceIdentifier.create(builder.build());
     }
 
+    @Serial
     private Object readResolve() {
         return yid;
     }
index e45d760faa8c2b6466d87620d0b53e108ab48e59..f691310d279298dc88ac8f23cc91dafffdb5b28c 100644 (file)
@@ -21,6 +21,7 @@ import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Sets;
+import java.io.Serial;
 import java.io.Serializable;
 import java.lang.invoke.MethodHandles;
 import java.lang.invoke.VarHandle;
@@ -77,6 +78,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode;
  */
 public abstract sealed class YangInstanceIdentifier implements HierarchicalIdentifier<YangInstanceIdentifier>
         permits FixedYangInstanceIdentifier, StackedYangInstanceIdentifier {
+    @Serial
     private static final long serialVersionUID = 4L;
     private static final VarHandle TO_STRING_CACHE;
     private static final VarHandle HASH;
@@ -393,6 +395,7 @@ public abstract sealed class YangInstanceIdentifier implements HierarchicalIdent
 
     abstract int computeHashCode();
 
+    @Serial
     final Object writeReplace() {
         return new YIDv1(this);
     }
index a0434e9e171e46fc42a1eb350fdcc7fb06d2f6f4..9efdd1f7a55064c871ea56a6fa0b977f8c1e55e6 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.yangtools.yang.data.api.codec;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.Beta;
+import java.io.Serial;
 import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
@@ -39,6 +40,7 @@ import org.opendaylight.yangtools.yang.model.api.ConstraintMetaDefinition;
  */
 @Beta
 public class YangInvalidValueException extends IllegalArgumentException implements YangNetconfErrorAware {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     private final @NonNull ErrorType errorType;
@@ -49,8 +51,8 @@ public class YangInvalidValueException extends IllegalArgumentException implemen
             final String message) {
         super(requireNonNull(message));
         this.errorType = requireNonNull(errorType);
-        this.errorAppTag = constraint.getErrorAppTag().orElse(null);
-        this.errorMessage = constraint.getErrorMessage().orElse(null);
+        errorAppTag = constraint.getErrorAppTag().orElse(null);
+        errorMessage = constraint.getErrorMessage().orElse(null);
     }
 
     @Override
index 60c19a516d0bfbed4ae97ebe3c2bc7de09b8cdf9..a7ad5e45c1ce5499f45c16ef9b8ee7063da84581 100644 (file)
@@ -10,9 +10,11 @@ package org.opendaylight.yangtools.yang.data.api.schema;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.Beta;
+import java.io.Serial;
 
 @Beta
 public class AnydataNormalizationException extends Exception {
+    @Serial
     private static final long serialVersionUID = 1L;
 
     public AnydataNormalizationException(final String message) {