X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fpersisted%2FShardDataTreeSnapshotMetadata.java;h=98302ee503710f9a95cf75b31f69bea6dc5ceefd;hb=23fa5a5c2a0748e12b5a704f2dc2ed3bc7169a58;hp=25cfda0177f1f76281e15d258e61d90410f58943;hpb=b087b867e014d755172740b59e5a3e6ec1cc489d;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshotMetadata.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshotMetadata.java index 25cfda0177..98302ee503 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshotMetadata.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshotMetadata.java @@ -7,21 +7,24 @@ */ package org.opendaylight.controller.cluster.datastore.persisted; -import com.google.common.base.Verify; +import static com.google.common.base.Verify.verifyNotNull; + import java.io.Externalizable; import java.io.Serializable; -import javax.annotation.Nonnull; +import org.eclipse.jdt.annotation.NonNull; /** * Base class for various bits of metadata attached to a {@link MetadataShardDataTreeSnapshot}. This class is not * an interface because we want to make sure all subclasses implement the externalizable proxy pattern, for which * we need to force {@link #writeReplace()} to be abstract. We do that by making it final and exposing a protected * {@link #externalizableProxy()} method. - *

+ * + *

* All concrete subclasses of this class should be final so as to form a distinct set of possible metadata. Since * metadata is serialized along with {@link MetadataShardDataTreeSnapshot}, this set is part of the serialization format * guarded by {@link PayloadVersion}. - *

+ * + *

* If a new metadata type is introduced or a type is removed, {@link PayloadVersion} needs to be bumped to ensure * compatibility. * @@ -36,7 +39,7 @@ public abstract class ShardDataTreeSnapshotMetadata getType(); }