X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fcommands%2FModifyTransactionRequestBuilder.java;h=0e99942c1ee9655bb32ac996d9462ec346cefa8d;hb=HEAD;hp=336902e192fe0ce0eebf687d1fc202b20181fbed;hpb=c9d61ee66367d819319bb8ccfa9f9b0555264d86;p=controller.git diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilder.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilder.java index 336902e192..0e99942c1e 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilder.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilder.java @@ -7,34 +7,32 @@ */ package org.opendaylight.controller.cluster.access.commands; +import static com.google.common.base.Preconditions.checkState; +import static java.util.Objects.requireNonNull; + import akka.actor.ActorRef; -import com.google.common.annotations.Beta; -import com.google.common.base.Preconditions; import java.util.ArrayList; import java.util.List; -import javax.annotation.concurrent.NotThreadSafe; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; -import org.opendaylight.yangtools.concepts.Builder; import org.opendaylight.yangtools.concepts.Identifiable; /** - * A reusable {@link Builder} for creating {@link ModifyTransactionRequest} message instances. Its internal state is - * reset when {@link #build()} is invoked, hence it can be used to create a sequence of messages. - * - * @author Robert Varga + * A reusable builder for creating {@link ModifyTransactionRequest} message instances. Its internal state is reset when + * {@link #build()} is invoked, hence it can be used to create a sequence of messages. This class is NOT thread-safe. */ -@Beta -@NotThreadSafe -public final class ModifyTransactionRequestBuilder implements Builder, - Identifiable { +public final class ModifyTransactionRequestBuilder implements Identifiable { private final List modifications = new ArrayList<>(1); - private final TransactionIdentifier identifier; + private final @NonNull TransactionIdentifier identifier; private final ActorRef replyTo; - private PersistenceProtocol protocol = null; + + private PersistenceProtocol protocol; + private boolean haveSequence; + private long sequence; public ModifyTransactionRequestBuilder(final TransactionIdentifier identifier, final ActorRef replyTo) { - this.identifier = Preconditions.checkNotNull(identifier); - this.replyTo = Preconditions.checkNotNull(replyTo); + this.identifier = requireNonNull(identifier); + this.replyTo = requireNonNull(replyTo); } @Override @@ -42,36 +40,50 @@ public final class ModifyTransactionRequestBuilder implements Builder