X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=dom%2Fmdsal-dom-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fdom%2Fbroker%2FDOMForwardedWriteTransaction.java;h=6292f82e3add44f7fe31f24de44eba68ba09b2fc;hb=c37d38386002ed12b279938051813f99a4de70ff;hp=2295f5a3141c3c718c13c9ad7f0ccae51a65ba78;hpb=093b38a5c2a4f6ed8b015916e4765be29e3d51e2;p=mdsal.git diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java index 2295f5a314..6292f82e3a 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java +++ b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java @@ -7,11 +7,6 @@ */ package org.opendaylight.mdsal.dom.broker; -import org.opendaylight.mdsal.dom.spi.store.DOMStoreThreePhaseCommitCohort; -import org.opendaylight.mdsal.dom.spi.store.DOMStoreWriteTransaction; - -import org.opendaylight.mdsal.common.api.LogicalDatastoreType; -import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; import com.google.common.base.Preconditions; import com.google.common.util.concurrent.CheckedFuture; import com.google.common.util.concurrent.Futures; @@ -20,7 +15,11 @@ import java.util.Collection; import java.util.Map; import java.util.concurrent.Future; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; +import org.opendaylight.mdsal.common.api.LogicalDatastoreType; +import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; +import org.opendaylight.mdsal.dom.spi.store.DOMStoreThreePhaseCommitCohort; +import org.opendaylight.mdsal.dom.spi.store.DOMStoreWriteTransaction; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.slf4j.Logger; @@ -36,6 +35,7 @@ import org.slf4j.LoggerFactory; *
  • {@link #delete(LogicalDatastoreType, YangInstanceIdentifier)} *
  • {@link #merge(LogicalDatastoreType, YangInstanceIdentifier, NormalizedNode)} * + * *

    * {@link #submit()} will result in invocation of * {@link DOMDataCommitImplementation#submit(org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction, Iterable)} @@ -48,8 +48,9 @@ import org.slf4j.LoggerFactory; class DOMForwardedWriteTransaction extends AbstractDOMForwardedCompositeTransaction implements DOMDataTreeWriteTransaction { @SuppressWarnings("rawtypes") - private static final AtomicReferenceFieldUpdater IMPL_UPDATER = - AtomicReferenceFieldUpdater.newUpdater(DOMForwardedWriteTransaction.class, AbstractDOMForwardedTransactionFactory.class, "commitImpl"); + private static final AtomicReferenceFieldUpdater IMPL_UPDATER = AtomicReferenceFieldUpdater.newUpdater( + DOMForwardedWriteTransaction.class, AbstractDOMForwardedTransactionFactory.class, "commitImpl"); @SuppressWarnings("rawtypes") private static final AtomicReferenceFieldUpdater FUTURE_UPDATER = AtomicReferenceFieldUpdater.newUpdater(DOMForwardedWriteTransaction.class, Future.class, "commitFuture"); @@ -68,6 +69,7 @@ class DOMForwardedWriteTransaction extends * set appropriately on {@link #submit()} and {@link #cancel()} via * {@link AtomicReferenceFieldUpdater#lazySet(Object, Object)}. * + *

    * Lazy set is safe for use because it is only referenced to in the * {@link #cancel()} slow path, where we will busy-wait for it. The * fast path gets the benefit of a store-store barrier instead of the @@ -82,7 +84,8 @@ class DOMForwardedWriteTransaction extends } @Override - public void put(final LogicalDatastoreType store, final YangInstanceIdentifier path, final NormalizedNode data) { + public void put(final LogicalDatastoreType store, final YangInstanceIdentifier path, + final NormalizedNode data) { checkRunning(commitImpl); getSubtransaction(store).write(path, data); } @@ -94,7 +97,8 @@ class DOMForwardedWriteTransaction extends } @Override - public void merge(final LogicalDatastoreType store, final YangInstanceIdentifier path, final NormalizedNode data) { + public void merge(final LogicalDatastoreType store, final YangInstanceIdentifier path, + final NormalizedNode data) { checkRunning(commitImpl); getSubtransaction(store).merge(path, data); }