X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fpersisted%2FDatastoreSnapshot.java;h=37d41258585d7f99dc617f63c5a3c50d43cbacdd;hp=9eb8a066d554da35cfff472b64a2773d12f5d759;hb=8232a626b43fdd2f5799da0fbcfb0f02d3c8f4fb;hpb=aafb8cb044e992dd784d1f4f66508599cc4cd588 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DatastoreSnapshot.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DatastoreSnapshot.java index 9eb8a066d5..37d4125858 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DatastoreSnapshot.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DatastoreSnapshot.java @@ -9,7 +9,6 @@ package org.opendaylight.controller.cluster.datastore.persisted; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.Externalizable; import java.io.IOException; import java.io.ObjectInput; @@ -58,16 +57,16 @@ public class DatastoreSnapshot implements Serializable { @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { - String type = (String)in.readObject(); - byte[] shardManagerSnapshot = (byte[]) in.readObject(); + String localType = (String)in.readObject(); + ShardManagerSnapshot localShardManagerSnapshot = (ShardManagerSnapshot) in.readObject(); int size = in.readInt(); - List shardSnapshots = new ArrayList<>(size); + List localShardSnapshots = new ArrayList<>(size); for (int i = 0; i < size; i++) { - shardSnapshots.add((ShardSnapshot) in.readObject()); + localShardSnapshots.add((ShardSnapshot) in.readObject()); } - datastoreSnapshot = new DatastoreSnapshot(type, shardManagerSnapshot, shardSnapshots); + datastoreSnapshot = new DatastoreSnapshot(localType, localShardManagerSnapshot, localShardSnapshots); } private Object readResolve() { @@ -76,13 +75,10 @@ public class DatastoreSnapshot implements Serializable { } private final String type; - private final byte[] shardManagerSnapshot; + private final ShardManagerSnapshot shardManagerSnapshot; private final List shardSnapshots; - @SuppressFBWarnings(value = "EI_EXPOSE_REP2", justification = "Stores a reference to an externally mutable byte[] " - + "object but this is OK since this class is merely a DTO and does not process byte[] internally. " - + "Also it would be inefficient to create a return copy as the byte[] could be large.") - public DatastoreSnapshot(@Nonnull String type, @Nullable byte[] shardManagerSnapshot, + public DatastoreSnapshot(@Nonnull String type, @Nullable ShardManagerSnapshot shardManagerSnapshot, @Nonnull List shardSnapshots) { this.type = Preconditions.checkNotNull(type); this.shardManagerSnapshot = shardManagerSnapshot; @@ -94,11 +90,8 @@ public class DatastoreSnapshot implements Serializable { return type; } - @SuppressFBWarnings(value = "EI_EXPOSE_REP", justification = "Exposes a mutable object stored in a field but " - + "this is OK since this class is merely a DTO and does not process byte[] internally. " - + "Also it would be inefficient to create a return copy as the byte[] could be large.") @Nullable - public byte[] getShardManagerSnapshot() { + public ShardManagerSnapshot getShardManagerSnapshot() { return shardManagerSnapshot; } @@ -107,7 +100,6 @@ public class DatastoreSnapshot implements Serializable { return shardSnapshots; } - @SuppressWarnings("static-method") private Object writeReplace() { return new Proxy(this); } @@ -165,7 +157,6 @@ public class DatastoreSnapshot implements Serializable { return snapshot; } - @SuppressWarnings("static-method") private Object writeReplace() { return new Proxy(this); }