X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-client%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fclient%2FClientActorContext.java;h=0864da10b06272c892f67d50aac9e8831e45b0d9;hb=2be60a19ed99fe7d33a24f7db8af3510f7ea835f;hp=7e392af37570b4c735339276fb8586ff78d878c9;hpb=d7c9a8ccfcb57f005490a226803d094289997ef9;p=controller.git diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorContext.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorContext.java index 7e392af375..0864da10b0 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorContext.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorContext.java @@ -7,16 +7,16 @@ */ package org.opendaylight.controller.cluster.access.client; +import static java.util.Objects.requireNonNull; + import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.actor.Cancellable; import akka.actor.Scheduler; import com.google.common.annotations.Beta; -import com.google.common.base.Preconditions; import com.google.common.base.Ticker; import java.util.concurrent.TimeUnit; -import javax.annotation.Nonnull; -import javax.annotation.concurrent.ThreadSafe; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier; import org.opendaylight.controller.cluster.common.actor.Dispatchers; import org.opendaylight.controller.cluster.io.FileBackedOutputStreamFactory; @@ -31,12 +31,11 @@ import scala.concurrent.duration.FiniteDuration; *

* Time-keeping in a client actor is based on monotonic time. The precision of this time can be expected to be the * same as {@link System#nanoTime()}, but it is not tied to that particular clock. Actor clock is exposed as - * a {@link Ticker}, which can be obtained via {@link #ticker()}. + * a {@link Ticker}, which can be obtained via {@link #ticker()}. This class is thread-safe. * * @author Robert Varga */ @Beta -@ThreadSafe public class ClientActorContext extends AbstractClientActorContext implements Identifiable { private final ExecutionContext executionContext; private final ClientIdentifier identifier; @@ -49,11 +48,11 @@ public class ClientActorContext extends AbstractClientActorContext implements Id ClientActorContext(final ActorRef self, final String persistenceId, final ActorSystem system, final ClientIdentifier identifier, final ClientActorConfig config) { super(self, persistenceId); - this.identifier = Preconditions.checkNotNull(identifier); - this.scheduler = Preconditions.checkNotNull(system).scheduler(); + this.identifier = requireNonNull(identifier); + this.scheduler = requireNonNull(system).scheduler(); this.executionContext = system.dispatcher(); this.dispatchers = new Dispatchers(system.dispatchers()); - this.config = Preconditions.checkNotNull(config); + this.config = requireNonNull(config); messageSlicer = MessageSlicer.builder().messageSliceSize(config.getMaximumMessageSliceSize()) .logContext(persistenceId).expireStateAfterInactivity(config.getRequestTimeout(), TimeUnit.NANOSECONDS) @@ -62,23 +61,19 @@ public class ClientActorContext extends AbstractClientActorContext implements Id } @Override - @Nonnull public ClientIdentifier getIdentifier() { return identifier; } - @Nonnull - public ClientActorConfig config() { + public @NonNull ClientActorConfig config() { return config; } - @Nonnull - public Dispatchers dispatchers() { + public @NonNull Dispatchers dispatchers() { return dispatchers; } - @Nonnull - public MessageSlicer messageSlicer() { + public @NonNull MessageSlicer messageSlicer() { return messageSlicer; } @@ -89,8 +84,7 @@ public class ClientActorContext extends AbstractClientActorContext implements Id * * @return Client actor time source */ - @Nonnull - public Ticker ticker() { + public @NonNull Ticker ticker() { return Ticker.systemTicker(); } @@ -100,13 +94,13 @@ public class ClientActorContext extends AbstractClientActorContext implements Id * @param command Block of code which needs to be execute * @param BackendInfo type */ - public void executeInActor(@Nonnull final InternalCommand command) { - self().tell(Preconditions.checkNotNull(command), ActorRef.noSender()); + public void executeInActor(final @NonNull InternalCommand command) { + self().tell(requireNonNull(command), ActorRef.noSender()); } - public Cancellable executeInActor(@Nonnull final InternalCommand command, + public Cancellable executeInActor(final @NonNull InternalCommand command, final FiniteDuration delay) { - return scheduler.scheduleOnce(Preconditions.checkNotNull(delay), self(), Preconditions.checkNotNull(command), + return scheduler.scheduleOnce(requireNonNull(delay), self(), requireNonNull(command), executionContext, ActorRef.noSender()); } }