From: Robert Varga Date: Mon, 15 Jan 2024 19:23:25 +0000 (+0100) Subject: Move AbstractDOMDataBroker to mdsal-dom-spi X-Git-Tag: v13.0.0~21 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=mdsal.git;a=commitdiff_plain;h=90b0687e0640ee23369d2ad9978628e3ff957a26 Move AbstractDOMDataBroker to mdsal-dom-spi This patch publishes AbstractDOMDataBroker so it can be reused by other implementations. JIRA: MDSAL-851 Change-Id: I70a472ad27678f7c2e50be8ecc3ffbcf89249b86 Signed-off-by: Robert Varga --- diff --git a/dom/mdsal-dom-broker/pom.xml b/dom/mdsal-dom-broker/pom.xml index 3946ddd45d..b29d1b831a 100644 --- a/dom/mdsal-dom-broker/pom.xml +++ b/dom/mdsal-dom-broker/pom.xml @@ -38,10 +38,6 @@ org.eclipse.jdt org.eclipse.jdt.annotation - - org.gaul - modernizer-maven-annotations - org.opendaylight.mdsal mdsal-common-api diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/CommitCoordinationTask.java b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/CommitCoordinationTask.java index dd5280462c..330f037c18 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/CommitCoordinationTask.java +++ b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/CommitCoordinationTask.java @@ -16,6 +16,7 @@ import java.util.concurrent.ExecutionException; import org.opendaylight.mdsal.common.api.CommitInfo; import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; +import org.opendaylight.mdsal.dom.spi.TransactionCommitFailedExceptionMapper; import org.opendaylight.mdsal.dom.spi.store.DOMStoreThreePhaseCommitCohort; import org.opendaylight.yangtools.util.DurationStatisticsTracker; import org.slf4j.Logger; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/SerializedDOMDataBroker.java b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/SerializedDOMDataBroker.java index 854ccfaaeb..c41d2c0b14 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/SerializedDOMDataBroker.java +++ b/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/SerializedDOMDataBroker.java @@ -20,6 +20,7 @@ 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.broker.CommitCoordinationTask.WithTracker; +import org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker; import org.opendaylight.mdsal.dom.spi.store.DOMStore; import org.opendaylight.mdsal.dom.spi.store.DOMStoreThreePhaseCommitCohort; import org.opendaylight.yangtools.util.DurationStatisticsTracker; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMBrokerTest.java b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMBrokerTest.java index aca1901557..243b03d8c6 100644 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMBrokerTest.java +++ b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMBrokerTest.java @@ -36,6 +36,7 @@ import org.opendaylight.mdsal.common.api.TransactionCommitDeadlockException; import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; import org.opendaylight.mdsal.dom.api.DOMDataTreeReadTransaction; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; +import org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker; import org.opendaylight.mdsal.dom.spi.store.DOMStore; import org.opendaylight.mdsal.dom.store.inmemory.InMemoryDOMDataStore; import org.opendaylight.yangtools.util.concurrent.DeadlockDetectingListeningExecutorService; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMDataTreeListenerTest.java b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMDataTreeListenerTest.java index c53c134955..4b91c8ee62 100644 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMDataTreeListenerTest.java +++ b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMDataTreeListenerTest.java @@ -31,6 +31,7 @@ import org.opendaylight.mdsal.common.api.TransactionCommitDeadlockException; import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener; import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService; import org.opendaylight.mdsal.dom.api.DOMDataTreeIdentifier; +import org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker; import org.opendaylight.mdsal.dom.spi.store.DOMStore; import org.opendaylight.mdsal.dom.store.inmemory.InMemoryDOMDataStore; import org.opendaylight.yangtools.util.concurrent.DeadlockDetectingListeningExecutorService; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMTransactionChainTest.java b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMTransactionChainTest.java index 1e4ccad6e1..c3f3d6a4c2 100644 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMTransactionChainTest.java +++ b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMTransactionChainTest.java @@ -30,6 +30,7 @@ import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.mdsal.dom.api.DOMDataTreeReadTransaction; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; import org.opendaylight.mdsal.dom.api.DOMTransactionChain; +import org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker; import org.opendaylight.mdsal.dom.spi.store.DOMStore; import org.opendaylight.mdsal.dom.store.inmemory.InMemoryDOMDataStore; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapperTest.java b/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapperTest.java deleted file mode 100644 index e593ab4bbd..0000000000 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapperTest.java +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.mdsal.dom.broker; - -import org.junit.Test; -import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; - -public class TransactionCommitFailedExceptionMapperTest { - - @Test(expected = TransactionCommitFailedException.class) - public void create() throws Exception { - throw TransactionCommitFailedExceptionMapper.create("test").newWithCause("test_cause", new Throwable()); - } -} \ No newline at end of file diff --git a/dom/mdsal-dom-spi/pom.xml b/dom/mdsal-dom-spi/pom.xml index cbb12506a1..a207c894e6 100644 --- a/dom/mdsal-dom-spi/pom.xml +++ b/dom/mdsal-dom-spi/pom.xml @@ -38,6 +38,10 @@ org.eclipse.jdt org.eclipse.jdt.annotation + + org.gaul + modernizer-maven-annotations + org.opendaylight.yangtools concepts diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMDataBroker.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMDataBroker.java similarity index 97% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMDataBroker.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMDataBroker.java index a47f564570..00003aad6b 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMDataBroker.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMDataBroker.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import java.util.EnumMap; import java.util.List; @@ -15,7 +15,6 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService; import org.opendaylight.mdsal.dom.api.DOMTransactionChain; -import org.opendaylight.mdsal.dom.spi.PingPongMergingDOMDataBroker; import org.opendaylight.mdsal.dom.spi.store.DOMStore; import org.opendaylight.mdsal.dom.spi.store.DOMStoreTransactionChain; import org.opendaylight.mdsal.dom.spi.store.DOMStoreTreeChangePublisher; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransaction.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransaction.java similarity index 99% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransaction.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransaction.java index 90497aff18..c47c090207 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransaction.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransaction.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static java.util.Objects.requireNonNull; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionFactory.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionFactory.java similarity index 99% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionFactory.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionFactory.java index ec16024430..d7350db098 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionFactory.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionFactory.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMDataBrokerTransactionChainImpl.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMDataBrokerTransactionChainImpl.java similarity index 89% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMDataBrokerTransactionChainImpl.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMDataBrokerTransactionChainImpl.java index 7e696886a9..f8d1cee569 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMDataBrokerTransactionChainImpl.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMDataBrokerTransactionChainImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static java.util.Objects.requireNonNull; @@ -59,22 +59,6 @@ final class DOMDataBrokerTransactionChainImpl extends AbstractDOMForwardedTransa private volatile State state = State.RUNNING; private volatile int counter = 0; - /** - *Constructor with args. - * - * @param chainId - * ID of transaction chain - * @param chains - * Backing {@link DOMStoreTransactionChain}s. - * @param coordinator - * Commit Coordinator which should be used to coordinate commits - * of transaction - * produced by this chain. - * @param listener - * Listener, which listens on transaction chain events. - * @throws NullPointerException - * If any of arguments is null. - */ DOMDataBrokerTransactionChainImpl(final long chainId, final Map chains, final AbstractDOMDataBroker broker) { super(chains); diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadOnlyTransaction.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadOnlyTransaction.java similarity index 98% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadOnlyTransaction.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadOnlyTransaction.java index 5d5ebd1359..bb641b212c 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadOnlyTransaction.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadOnlyTransaction.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import com.google.common.util.concurrent.FluentFuture; import java.util.Optional; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadWriteTransaction.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadWriteTransaction.java similarity index 98% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadWriteTransaction.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadWriteTransaction.java index 3e0eca3d05..39cb288cbd 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedReadWriteTransaction.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedReadWriteTransaction.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import com.google.common.util.concurrent.FluentFuture; import java.util.Optional; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransaction.java similarity index 98% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransaction.java index 70b1e4043f..3656f61df9 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransaction.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransaction.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static com.google.common.base.Preconditions.checkState; import static java.util.Objects.requireNonNull; @@ -19,7 +19,6 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.mdsal.common.api.CommitInfo; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; -import org.opendaylight.mdsal.dom.spi.UncancellableListenableFuture; import org.opendaylight.mdsal.dom.spi.store.DOMStoreWriteTransaction; import org.opendaylight.yangtools.util.concurrent.FluentFutures; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; diff --git a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapper.java b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapper.java similarity index 97% rename from dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapper.java rename to dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapper.java index d807e6be34..397fe4b47d 100644 --- a/dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/TransactionCommitFailedExceptionMapper.java +++ b/dom/mdsal-dom-spi/src/main/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapper.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; import org.opendaylight.yangtools.util.concurrent.ExceptionMapper; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionTest.java similarity index 98% rename from dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionTest.java rename to dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionTest.java index 76cdb02725..78cb1d59c5 100644 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/AbstractDOMForwardedTransactionTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMForwardedTransactionTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static org.hamcrest.CoreMatchers.instanceOf; import static org.hamcrest.MatcherAssert.assertThat; diff --git a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransactionTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransactionTest.java similarity index 98% rename from dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransactionTest.java rename to dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransactionTest.java index f508ce765d..61b0dbaf12 100644 --- a/dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMForwardedWriteTransactionTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/DOMForwardedWriteTransactionTest.java @@ -4,7 +4,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.mdsal.dom.broker; +package org.opendaylight.mdsal.dom.spi; import static org.hamcrest.CoreMatchers.instanceOf; import static org.hamcrest.MatcherAssert.assertThat; diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapperTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapperTest.java new file mode 100644 index 0000000000..c8bd373a8f --- /dev/null +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/TransactionCommitFailedExceptionMapperTest.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +package org.opendaylight.mdsal.dom.spi; + +import static org.junit.jupiter.api.Assertions.assertInstanceOf; +import static org.junit.jupiter.api.Assertions.assertSame; + +import org.junit.jupiter.api.Test; +import org.opendaylight.mdsal.common.api.TransactionCommitFailedException; + +class TransactionCommitFailedExceptionMapperTest { + private final TransactionCommitFailedExceptionMapper mapper = TransactionCommitFailedExceptionMapper.create("test"); + + @Test + void create() { + final var cause = new Throwable(); + final var ex = assertInstanceOf(TransactionCommitFailedException.class, + mapper.newWithCause("test_cause", cause)); + assertSame(cause, ex.getCause()); + } +} \ No newline at end of file