From: Tom Pantelis Date: Tue, 25 Oct 2016 04:49:04 +0000 (-0400) Subject: Fix CS warnings in cds-access-client and enable enforcement X-Git-Tag: release/carbon~424 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=314d5b41ea6b464db939da95a33c872f594ccada Fix CS warnings in cds-access-client and enable enforcement Fixed checkstyle warnings and enabled enforcement. Most of the warnings/changes were for: - variable name too short - correct ordering of @Nonnull annotations - line too long - javadocs Change-Id: Ib888dbf909282079bff6320ce718d5a4da3ed31a Signed-off-by: Tom Pantelis --- diff --git a/opendaylight/md-sal/cds-access-client/pom.xml b/opendaylight/md-sal/cds-access-client/pom.xml index 1ed37ff04a..376be8c107 100644 --- a/opendaylight/md-sal/cds-access-client/pom.xml +++ b/opendaylight/md-sal/cds-access-client/pom.xml @@ -72,6 +72,18 @@ + + + + org.apache.maven.plugins + maven-checkstyle-plugin + + checkstyle.violationSeverity=error + + + + + scm:git:http://git.opendaylight.org/gerrit/controller.git scm:git:ssh://git.opendaylight.org:29418/controller.git diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorBehavior.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorBehavior.java index e564359fcc..0a49fc03a1 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorBehavior.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorBehavior.java @@ -14,8 +14,7 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; /** - * Base behavior attached to {@link AbstractClientActor}. Exposes - * @author user + * Base behavior attached to {@link AbstractClientActor}. * * @param Type of associated context * @@ -25,7 +24,7 @@ import javax.annotation.Nullable; public abstract class AbstractClientActorBehavior { private final C context; - AbstractClientActorBehavior(final @Nonnull C context) { + AbstractClientActorBehavior(@Nonnull final C context) { // Hidden to prevent outside subclasses. Users instantiated this via ClientActorBehavior this.context = Preconditions.checkNotNull(context); } @@ -35,7 +34,8 @@ public abstract class AbstractClientActorBehavior onReceiveCommand(@Nonnull Object command); + @Nullable + abstract AbstractClientActorBehavior onReceiveCommand(@Nonnull Object command); /** * Implementation-internal method for handling an incoming recovery message coming from persistence. @@ -72,5 +75,6 @@ public abstract class AbstractClientActorBehavior onReceiveRecover(@Nonnull Object recover); + @Nullable + abstract AbstractClientActorBehavior onReceiveRecover(@Nonnull Object recover); } diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorContext.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorContext.java index 0ca3545cf3..7899358a17 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorContext.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorContext.java @@ -13,8 +13,8 @@ import javax.annotation.Nonnull; import org.opendaylight.yangtools.concepts.Mutable; /** - * Common, externally-invisible superclass of contexts associated with a {@link AbstractClientActor}. End users pass this - * object via opaque {@link ClientActorContext}. + * Common, externally-invisible superclass of contexts associated with a {@link AbstractClientActor}. End users pass + * this object via opaque {@link ClientActorContext}. * * @author Robert Varga */ @@ -22,16 +22,18 @@ abstract class AbstractClientActorContext implements Mutable { private final String persistenceId; private final ActorRef self; - AbstractClientActorContext(final @Nonnull ActorRef self, final @Nonnull String persistenceId) { + AbstractClientActorContext(@Nonnull final ActorRef self, @Nonnull final String persistenceId) { this.persistenceId = Preconditions.checkNotNull(persistenceId); this.self = Preconditions.checkNotNull(self); } - final @Nonnull String persistenceId() { + @Nonnull + final String persistenceId() { return persistenceId; } - public final @Nonnull ActorRef self() { + @Nonnull + public final ActorRef self() { return self; } } diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfo.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfo.java index bdffb08c3e..a5a579dc03 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfo.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfo.java @@ -17,6 +17,7 @@ import org.opendaylight.controller.cluster.access.ABIVersion; * Basic information about how to talk to the backend. ClientActorBehavior uses this information to dispatch requests * to the backend. * + *

* This class is not final so concrete actor behavior implementations may subclass it and track more information about * the backend. The {@link #hashCode()} and {@link #equals(Object)} methods are made final to ensure subclasses compare * on identity. diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfoResolver.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfoResolver.java index cb64809120..71805735f0 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfoResolver.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/BackendInfoResolver.java @@ -61,7 +61,7 @@ public abstract class BackendInfoResolver { * @param cookie Backend cookie * @param info Previous information to be invalidated */ - public final void invalidateBackend(final long cookie, final @Nonnull CompletionStage info) { + public final void invalidateBackend(final long cookie, @Nonnull final CompletionStage info) { if (backends.remove(cookie, Preconditions.checkNotNull(info))) { LOG.trace("Invalidated cache %s -> %s", Long.toUnsignedString(cookie), info); invalidateBackendInfo(info); @@ -75,7 +75,8 @@ public abstract class BackendInfoResolver { * @param cookie Backend cookie * @return A {@link CompletableFuture} resulting in information about the backend */ - protected abstract @Nonnull CompletableFuture resolveBackendInfo(final @Nonnull Long cookie); + @Nonnull + protected abstract CompletableFuture resolveBackendInfo(@Nonnull final Long cookie); /** * Invalidate previously-resolved shard information. This method is invoked when a timeout is detected diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorBehavior.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorBehavior.java index 8939ec977e..43b621c05c 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorBehavior.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/ClientActorBehavior.java @@ -34,12 +34,13 @@ public abstract class ClientActorBehavior extends RecoveredClientActorBehavior { private static final Logger LOG = LoggerFactory.getLogger(ClientActorBehavior.class); - protected ClientActorBehavior(final @Nonnull ClientActorContext context) { + protected ClientActorBehavior(@Nonnull final ClientActorContext context) { super(context); } @Override - public final @Nonnull ClientIdentifier getIdentifier() { + @Nonnull + public final ClientIdentifier getIdentifier() { return context().getIdentifier(); } @@ -145,6 +146,7 @@ public abstract class ClientActorBehavior extends RecoveredClientActorBehavior resolver(); + @Nonnull + protected abstract BackendInfoResolver resolver(); /** * Send a request to the backend and invoke a specified callback when it finishes. This method is safe to invoke 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 e8993c0ee7..26e68356d3 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 @@ -31,6 +31,7 @@ import scala.concurrent.duration.FiniteDuration; /** * An actor context associated with this {@link AbstractClientActor}. * + *

* 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()}. @@ -57,7 +58,8 @@ public class ClientActorContext extends AbstractClientActorContext implements Id } @Override - public @Nonnull ClientIdentifier getIdentifier() { + @Nonnull + public ClientIdentifier getIdentifier() { return identifier; } @@ -68,7 +70,8 @@ public class ClientActorContext extends AbstractClientActorContext implements Id * * @return Client actor time source */ - public @Nonnull Ticker ticker() { + @Nonnull + public Ticker ticker() { return Ticker.systemTicker(); } @@ -77,11 +80,11 @@ public class ClientActorContext extends AbstractClientActorContext implements Id * * @param command Block of code which needs to be execute */ - public void executeInActor(final @Nonnull InternalCommand command) { + public void executeInActor(@Nonnull final InternalCommand command) { self().tell(Preconditions.checkNotNull(command), ActorRef.noSender()); } - public Cancellable executeInActor(final @Nonnull InternalCommand command, final FiniteDuration delay) { + public Cancellable executeInActor(@Nonnull final InternalCommand command, final FiniteDuration delay) { return scheduler.scheduleOnce(Preconditions.checkNotNull(delay), self(), Preconditions.checkNotNull(command), executionContext, ActorRef.noSender()); } diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/EmptyQueue.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/EmptyQueue.java index 1513ebaad6..c4a09e736c 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/EmptyQueue.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/EmptyQueue.java @@ -36,7 +36,7 @@ public final class EmptyQueue extends AbstractQueue { } @Override - public boolean offer(final E e) { + public boolean offer(final E entry) { return false; } diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/InitialClientActorContext.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/InitialClientActorContext.java index 5a10036373..50183c18b7 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/InitialClientActorContext.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/InitialClientActorContext.java @@ -13,6 +13,7 @@ import com.google.common.base.Preconditions; import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier; /** + * The initial context for an actor. * * @author Robert Varga */ diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/RecoveredClientActorBehavior.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/RecoveredClientActorBehavior.java index 6ec8ec8389..3199db35fb 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/RecoveredClientActorBehavior.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/RecoveredClientActorBehavior.java @@ -8,11 +8,14 @@ package org.opendaylight.controller.cluster.access.client; /** + * Abstract base class class for a behavior whose actor has recovered from persistence. + * * @param Concrete context type * * @author Robert Varga */ -abstract class RecoveredClientActorBehavior extends AbstractClientActorBehavior { +abstract class RecoveredClientActorBehavior + extends AbstractClientActorBehavior { RecoveredClientActorBehavior(final C context) { super(context); diff --git a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/SavingClientActorBehavior.java b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/SavingClientActorBehavior.java index 5fc3ef3884..8f6e991519 100644 --- a/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/SavingClientActorBehavior.java +++ b/opendaylight/md-sal/cds-access-client/src/main/java/org/opendaylight/controller/cluster/access/client/SavingClientActorBehavior.java @@ -46,7 +46,8 @@ final class SavingClientActorBehavior extends RecoveredClientActorBehavior * These options are covered via returning an {@link Optional}. The caller needs to examine it and decode * the scenarios above according to the following rules: * - if is null, the first case applies @@ -271,7 +273,8 @@ final class SequencedQueue { transmitEntries(pending, toSend); } - Optional setBackendInfo(final CompletionStage proof, final BackendInfo backend) { + Optional setBackendInfo(final CompletionStage proof, + final BackendInfo backend) { Preconditions.checkNotNull(backend); if (!proof.equals(backendProof)) { LOG.debug("Ignoring resolution {} while waiting for {}", proof, this.backendProof); diff --git a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorTest.java b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorTest.java index abc76f13d5..d9e95b6951 100644 --- a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorTest.java +++ b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/AbstractClientActorTest.java @@ -8,6 +8,7 @@ package org.opendaylight.controller.cluster.access.client; import static org.mockito.Mockito.doReturn; + import akka.actor.ActorRef; import org.junit.Before; import org.mockito.Mock; diff --git a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ClientActorContextTest.java b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ClientActorContextTest.java index 34abbe5477..b4e64c8ab5 100644 --- a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ClientActorContextTest.java +++ b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ClientActorContextTest.java @@ -8,6 +8,7 @@ package org.opendaylight.controller.cluster.access.client; import static org.junit.Assert.assertSame; + import akka.actor.ActorRef; import akka.actor.Scheduler; import akka.dispatch.Dispatcher; @@ -23,7 +24,8 @@ import org.opendaylight.controller.cluster.access.concepts.MemberName; public class ClientActorContextTest { private static final MemberName MEMBER_NAME = MemberName.forName("member-1"); - private static final FrontendType FRONTEND_TYPE = FrontendType.forName(ClientActorContextTest.class.getSimpleName()); + private static final FrontendType FRONTEND_TYPE = + FrontendType.forName(ClientActorContextTest.class.getSimpleName()); private static final FrontendIdentifier FRONTEND_ID = FrontendIdentifier.create(MEMBER_NAME, FRONTEND_TYPE); private static final ClientIdentifier CLIENT_ID = ClientIdentifier.create(FRONTEND_ID, 0); private static final String PERSISTENCE_ID = ClientActorContextTest.class.getSimpleName(); @@ -44,7 +46,8 @@ public class ClientActorContextTest { @Test public void testMockingControl() { - ClientActorContext ctx = new ClientActorContext(mockSelf, mockScheduler, mockDispatcher, PERSISTENCE_ID, CLIENT_ID); + ClientActorContext ctx = new ClientActorContext(mockSelf, mockScheduler, mockDispatcher, + PERSISTENCE_ID, CLIENT_ID); assertSame(CLIENT_ID, ctx.getIdentifier()); assertSame(PERSISTENCE_ID, ctx.persistenceId()); assertSame(mockSelf, ctx.self()); @@ -52,7 +55,8 @@ public class ClientActorContextTest { @Test public void testTicker() { - ClientActorContext ctx = new ClientActorContext(mockSelf, mockScheduler, mockDispatcher, PERSISTENCE_ID, CLIENT_ID); + ClientActorContext ctx = new ClientActorContext(mockSelf, mockScheduler, mockDispatcher, + PERSISTENCE_ID, CLIENT_ID); assertSame(Ticker.systemTicker(), ctx.ticker()); } } diff --git a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueEntryTest.java b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueEntryTest.java index 1b56e5389c..8cc990ce7c 100644 --- a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueEntryTest.java +++ b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueEntryTest.java @@ -15,6 +15,7 @@ import static org.junit.Assert.assertTrue; import static org.mockito.Matchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; + import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.testkit.TestProbe; @@ -54,7 +55,8 @@ public class SequencedQueueEntryTest { } @Override - protected AbstractRequestFailureProxy externalizableProxy(final ABIVersion version) { + protected AbstractRequestFailureProxy externalizableProxy( + final ABIVersion version) { return null; } @@ -193,12 +195,12 @@ public class SequencedQueueEntryTest { assertRequestEquals(mockRequest, mockActor.receiveOne(Duration.apply(5, TimeUnit.SECONDS))); } - private static void assertRequestEquals(final Request expected, final Object o) { - assertTrue(o instanceof RequestEnvelope); + private static void assertRequestEquals(final Request expected, final Object obj) { + assertTrue(obj instanceof RequestEnvelope); - final RequestEnvelope actual = (RequestEnvelope) o; - assertEquals(0, actual.getSessionId()); - assertEquals(0, actual.getTxSequence()); - assertEquals(expected.getTarget(), actual.getMessage().getTarget()); + final RequestEnvelope actual = (RequestEnvelope) obj; + assertEquals(0, actual.getSessionId()); + assertEquals(0, actual.getTxSequence()); + assertEquals(expected.getTarget(), actual.getMessage().getTarget()); } } diff --git a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueTest.java b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueTest.java index 305ec31661..72be005664 100644 --- a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueTest.java +++ b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/SequencedQueueTest.java @@ -17,6 +17,7 @@ import static org.mockito.Matchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; + import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.testkit.TestProbe; @@ -58,7 +59,8 @@ public class SequencedQueueTest { } @Override - protected AbstractRequestFailureProxy externalizableProxy(final ABIVersion version) { + protected AbstractRequestFailureProxy externalizableProxy( + final ABIVersion version) { return null; } @@ -162,7 +164,7 @@ public class SequencedQueueTest { assertTrue(queue.hasCompleted()); } - @Test(expected=IllegalStateException.class) + @Test(expected = IllegalStateException.class) public void testClosedEnqueueRequest() { queue.close(); @@ -186,7 +188,7 @@ public class SequencedQueueTest { assertSame(mockCause, captor.getValue().getCause()); } - @Test(expected=IllegalStateException.class) + @Test(expected = IllegalStateException.class) public void testPoisonPerformsClose() { // Implies close() queue.poison(mockCause); @@ -216,7 +218,7 @@ public class SequencedQueueTest { assertFalse(queue.expectProof(proof)); } - @Test(expected=NullPointerException.class) + @Test(expected = NullPointerException.class) public void testSetBackendNull() { final CompletableFuture proof = new CompletableFuture<>(); assertTrue(queue.expectProof(proof)); @@ -339,7 +341,7 @@ public class SequencedQueueTest { assertTrue(ret); } - @Test(expected=NoProgressException.class) + @Test(expected = NoProgressException.class) public void testRunTimeoutWithoutProgressExact() throws NoProgressException { queue.enqueueRequest(mockRequest, mockCallback); @@ -349,7 +351,7 @@ public class SequencedQueueTest { queue.runTimeout(); } - @Test(expected=NoProgressException.class) + @Test(expected = NoProgressException.class) public void testRunTimeoutWithoutProgressMore() throws NoProgressException { queue.enqueueRequest(mockRequest, mockCallback); @@ -440,10 +442,10 @@ public class SequencedQueueTest { assertRequestEquals(expected, sequence, mockActor.receiveOne(FiniteDuration.apply(5, TimeUnit.SECONDS))); } - private static void assertRequestEquals(final Request expected, final long sequence, final Object o) { - assertTrue(o instanceof RequestEnvelope); + private static void assertRequestEquals(final Request expected, final long sequence, final Object obj) { + assertTrue(obj instanceof RequestEnvelope); - final RequestEnvelope actual = (RequestEnvelope) o; + final RequestEnvelope actual = (RequestEnvelope) obj; assertEquals(0, actual.getSessionId()); assertEquals(sequence, actual.getTxSequence()); assertSame(expected, actual.getMessage());