X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fbase%2Fmessages%2FSendInstallSnapshot.java;h=cdb94d44ee2914319ad9c652ccf8cde1e6e544cf;hb=refs%2Fchanges%2F11%2F80211%2F6;hp=83c85d9135a773541b40889ecf81453d9607833b;hpb=e316a0ef36279a72767703d190f38a39d7d49395;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/base/messages/SendInstallSnapshot.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/base/messages/SendInstallSnapshot.java index 83c85d9135..cdb94d44ee 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/base/messages/SendInstallSnapshot.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/base/messages/SendInstallSnapshot.java @@ -5,19 +5,32 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.controller.cluster.raft.base.messages; -import com.google.protobuf.ByteString; +import static java.util.Objects.requireNonNull; + +import com.google.common.io.ByteSource; +import org.eclipse.jdt.annotation.NonNull; +import org.opendaylight.controller.cluster.raft.persisted.Snapshot; -public class SendInstallSnapshot { - private ByteString snapshot; +/** + * Internal message sent from the SnapshotManager to its associated leader when a snapshot capture is complete to + * prompt the leader to install the snapshot on its followers as needed. + */ +public final class SendInstallSnapshot { + private final @NonNull Snapshot snapshot; + private final @NonNull ByteSource snapshotBytes; - public SendInstallSnapshot(ByteString snapshot) { - this.snapshot = snapshot; + public SendInstallSnapshot(@NonNull Snapshot snapshot, @NonNull ByteSource snapshotBytes) { + this.snapshot = requireNonNull(snapshot); + this.snapshotBytes = requireNonNull(snapshotBytes); } - public ByteString getSnapshot() { + public @NonNull Snapshot getSnapshot() { return snapshot; } + + public @NonNull ByteSource getSnapshotBytes() { + return snapshotBytes; + } }