X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fcommands%2FModifyTransactionRequestBuilder.java;h=8e2e5cce0b61841d881132d8f5df87229982011f;hp=88c6a8e24eb3455b3a541a27441faf24ef110727;hb=b5d01b5d28d52413bf45b626b746c1519685058c;hpb=e4a1f1fa1f3efb4442c1141224b8a2df714efcb4;ds=sidebyside 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 88c6a8e24e..8e2e5cce0b 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,35 +7,36 @@ */ 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. + * 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. * * @author Robert Varga */ @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 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 @@ -43,45 +44,50 @@ public final class ModifyTransactionRequestBuilder implements Builder