X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatabroker%2Factors%2Fdds%2FProxyHistory.java;fp=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatabroker%2Factors%2Fdds%2FProxyHistory.java;h=fb8764041e66bb88ee476ed20183eca2152ee549;hb=87979c22dfbeb25924600a7d3cc6e875edb82c5e;hp=92284e05a2fcef37edfa4362380279514f154d9c;hpb=da20b039093b3fe98cb56bdf59896c61ab2a62b9;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ProxyHistory.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ProxyHistory.java index 92284e05a2..fb8764041e 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ProxyHistory.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ProxyHistory.java @@ -8,10 +8,11 @@ package org.opendaylight.controller.cluster.databroker.actors.dds; import static com.google.common.base.Preconditions.checkState; +import static com.google.common.base.Verify.verify; +import static com.google.common.base.Verify.verifyNotNull; import static java.util.Objects.requireNonNull; import akka.actor.ActorRef; -import com.google.common.base.Verify; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Collection; import java.util.Iterator; @@ -130,7 +131,7 @@ abstract class ProxyHistory implements Identifiable { @Override void onTransactionCompleted(final AbstractProxyTransaction tx) { - Verify.verify(tx instanceof LocalProxyTransaction); + verify(tx instanceof LocalProxyTransaction, "Unexpected transaction %s", tx); if (tx instanceof LocalReadWriteProxyTransaction && LAST_SEALED_UPDATER.compareAndSet(this, (LocalReadWriteProxyTransaction) tx, null)) { LOG.debug("Completed last sealed transaction {}", tx); @@ -229,7 +230,7 @@ abstract class ProxyHistory implements Identifiable { final ConnectionEntry e = it.next(); final Request req = e.getRequest(); if (identifier.equals(req.getTarget())) { - Verify.verify(req instanceof LocalHistoryRequest); + verify(req instanceof LocalHistoryRequest, "Unexpected request %s", req); if (req instanceof CreateLocalHistoryRequest) { successor.connection.enqueueRequest(req, e.getCallback(), e.getEnqueuedTicks()); it.remove(); @@ -249,7 +250,7 @@ abstract class ProxyHistory implements Identifiable { final ConnectionEntry e = it.next(); final Request req = e.getRequest(); if (identifier.equals(req.getTarget())) { - Verify.verify(req instanceof LocalHistoryRequest); + verify(req instanceof LocalHistoryRequest, "Unexpected request %s", req); if (req instanceof DestroyLocalHistoryRequest) { successor.connection.enqueueRequest(req, e.getCallback(), e.getEnqueuedTicks()); it.remove(); @@ -259,10 +260,10 @@ abstract class ProxyHistory implements Identifiable { } } - @GuardedBy("lock") + @Holding("lock") @Override ProxyHistory finishReconnect() { - final ProxyHistory ret = Verify.verifyNotNull(successor); + final ProxyHistory ret = verifyNotNull(successor); for (AbstractProxyTransaction t : proxies.values()) { t.finishReconnect(); @@ -352,6 +353,7 @@ abstract class ProxyHistory implements Identifiable { } @Override + // Non-final for mocking public LocalHistoryIdentifier getIdentifier() { return identifier; } @@ -377,6 +379,7 @@ abstract class ProxyHistory implements Identifiable { return createTransactionProxy(txId, snapshotOnly, false); } + // Non-final for mocking AbstractProxyTransaction createTransactionProxy(final TransactionIdentifier txId, final boolean snapshotOnly, final boolean isDone) { lock.lock(); @@ -417,7 +420,7 @@ abstract class ProxyHistory implements Identifiable { } } - void purgeTransaction(final AbstractProxyTransaction tx) { + final void purgeTransaction(final AbstractProxyTransaction tx) { lock.lock(); try { proxies.remove(tx.getIdentifier()); @@ -462,7 +465,7 @@ abstract class ProxyHistory implements Identifiable { abstract ProxyHistory createSuccessor(AbstractClientConnection connection); @SuppressFBWarnings(value = "UL_UNRELEASED_LOCK", justification = "Lock is released asynchronously via the cohort") - ProxyReconnectCohort startReconnect(final ConnectedClientConnection newConnection) { + final ProxyReconnectCohort startReconnect(final ConnectedClientConnection newConnection) { lock.lock(); if (successor != null) { lock.unlock(); @@ -506,6 +509,7 @@ abstract class ProxyHistory implements Identifiable { // No-op for most implementations } + @Holding("lock") void onTransactionSealed(final AbstractProxyTransaction tx) { // No-op on most implementations }