Migrate netconf users of submit() to commit() 39/73839/3
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 9 Jul 2018 10:52:02 +0000 (12:52 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 10 Jul 2018 16:02:12 +0000 (18:02 +0200)
This is the next round of conversions, covering most of netconf.

Change-Id: Ic3caa8ed0879ad547940ff09d034adb5d6d6f687
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
22 files changed:
netconf/callhome-provider/src/main/java/org/opendaylight/netconf/callhome/mount/CallhomeStatusReporter.java
netconf/callhome-provider/src/main/java/org/opendaylight/netconf/callhome/mount/IetfZeroTouchCallHomeServerProvider.java
netconf/mdsal-netconf-monitoring/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/monitoring/MonitoringToMdsalWriterTest.java
netconf/mdsal-netconf-notification/src/main/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/NotificationToMdsalWriter.java
netconf/mdsal-netconf-notification/src/test/java/org/opendaylight/controller/config/yang/netconf/mdsal/notification/NotificationToMdsalWriterTest.java
netconf/mdsal-netconf-yang-library/src/test/java/org/opendaylight/netconf/mdsal/yang/library/SchemaServiceToMdsalWriterTest.java
netconf/netconf-topology-singleton/src/test/java/org/opendaylight/netconf/topology/singleton/impl/RemoteDeviceConnectorImplTest.java
netconf/netconf-topology-singleton/src/test/java/org/opendaylight/netconf/topology/singleton/impl/actors/WriteTransactionActorTestAdapter.java
netconf/netconf-topology/src/test/java/org/opendaylight/netconf/topology/impl/NetconfTopologyImplTest.java
netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/sal/NetconfDeviceTopologyAdapter.java
netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/util/NetconfSalKeystoreService.java
netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/util/NetconfTopologyRPCProvider.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/NetconfDeviceSalProviderTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/NetconfDeviceTopologyAdapterTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/tx/NetconfDeviceWriteOnlyTxTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/tx/TxChainTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/tx/WriteCandidateRunningTxTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/tx/WriteCandidateTxTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/sal/tx/WriteRunningTxTest.java
netconf/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/util/NetconfSalKeystoreServiceTest.java
netconf/yanglib/src/main/java/org/opendaylight/yanglib/impl/YangLibProvider.java
netconf/yanglib/src/test/java/org/opendaylight/yanglib/impl/YangLibProviderTest.java

index b315aeef989fc6b1b8cc55219e3eb76101311c2a..db43d0d39377e6cfc34a214422a52188ba3d2980 100644 (file)
@@ -224,7 +224,7 @@ class CallhomeStatusReporter implements DataTreeChangeListener<Node>, StatusReco
     private void writeDevice(final NodeId nodeId, final Device modifiedDevice) {
         ReadWriteTransaction opTx = dataBroker.newReadWriteTransaction();
         opTx.merge(LogicalDatastoreType.OPERATIONAL, buildDeviceInstanceIdentifier(nodeId), modifiedDevice);
-        opTx.submit();
+        opTx.commit();
     }
 
     private static InstanceIdentifier<Device> buildDeviceInstanceIdentifier(final NodeId nodeId) {
@@ -265,7 +265,7 @@ class CallhomeStatusReporter implements DataTreeChangeListener<Node>, StatusReco
                         .child(Device.class, device.key());
 
         tx.merge(LogicalDatastoreType.OPERATIONAL, deviceIId, device);
-        tx.submit();
+        tx.commit();
     }
 
     private AllowedDevices getDevices() {
index 982ec0c6f631abbe2c4fde470f2b58d28c99bfc2..b71e423c4a9d97b6ca85c8d5626a0f3189b1412e 100644 (file)
@@ -185,7 +185,7 @@ public class IetfZeroTouchCallHomeServerProvider implements AutoCloseable, DataT
         }
 
         if (numRemoved > 0) {
-            opTx.submit();
+            opTx.commit();
         }
     }
 
@@ -213,6 +213,6 @@ public class IetfZeroTouchCallHomeServerProvider implements AutoCloseable, DataT
                 .setSshHostKey(cfgDevice.getSshHostKey()).setUniqueId(cfgDevice.getUniqueId()).build();
 
         tx.merge(LogicalDatastoreType.OPERATIONAL, deviceIID, cfgDevice);
-        tx.submit();
+        tx.commit();
     }
 }
index a200940d7442e46f677c75a4d8fd32cc6ed192a1..d2b4d3a82a9462196b984d3f531b3570db656ad3 100644 (file)
@@ -5,7 +5,6 @@
  * 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.controller.config.yang.netconf.mdsal.monitoring;
 
 import static org.mockito.Matchers.any;
@@ -14,6 +13,7 @@ import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.inOrder;
 import static org.mockito.Mockito.verify;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -25,7 +25,6 @@ import org.mockito.MockitoAnnotations;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.netconf.api.monitoring.NetconfMonitoringService;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.NetconfState;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.Capabilities;
@@ -35,7 +34,6 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.mon
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.Sessions;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.SessionBuilder;
-import org.opendaylight.yangtools.util.concurrent.FluentFutures;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 
 public class MonitoringToMdsalWriterTest {
@@ -43,9 +41,6 @@ public class MonitoringToMdsalWriterTest {
     private static final InstanceIdentifier<NetconfState> INSTANCE_IDENTIFIER =
             InstanceIdentifier.create(NetconfState.class);
 
-    @Mock
-    private CommitInfo info;
-
     @Mock
     private NetconfMonitoringService monitoring;
     @Mock
@@ -66,7 +61,7 @@ public class MonitoringToMdsalWriterTest {
 
         doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any());
         doNothing().when(writeTransaction).delete(eq(LogicalDatastoreType.OPERATIONAL), any());
-        doReturn(FluentFutures.immediateFluentFuture(info)).when(writeTransaction).commit();
+        doReturn(emptyFluentFuture()).when(writeTransaction).commit();
 
         writer = new MonitoringToMdsalWriter(monitoring, dataBroker);
     }
index 5621f1728e7b4762365c76f0bc07eefde2e0ced2..c5fad3f5b0fcd04111f04fbe7f53a568443d0ba2 100644 (file)
@@ -9,12 +9,12 @@
 package org.opendaylight.controller.config.yang.netconf.mdsal.notification;
 
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.MoreExecutors;
+import java.util.concurrent.ExecutionException;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.netconf.notifications.NetconfNotificationCollector;
 import org.opendaylight.netconf.notifications.NotificationRegistration;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.netconf.notification._1._0.rev080714.StreamNameType;
@@ -52,9 +52,9 @@ public final class NotificationToMdsalWriter implements AutoCloseable, NetconfNo
         final WriteTransaction tx = dataBroker.newWriteOnlyTransaction();
         tx.delete(LogicalDatastoreType.OPERATIONAL, InstanceIdentifier.create(Netconf.class));
 
-        Futures.addCallback(tx.submit(), new FutureCallback<Void>() {
+        tx.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(final Void avoid) {
+            public void onSuccess(final CommitInfo info) {
                 LOG.debug("Streams cleared successfully");
             }
 
@@ -82,9 +82,9 @@ public final class NotificationToMdsalWriter implements AutoCloseable, NetconfNo
         tx.merge(LogicalDatastoreType.OPERATIONAL, streamIdentifier, stream, true);
 
         try {
-            tx.submit().checkedGet();
+            tx.commit().get();
             LOG.debug("Stream %s registered successfully.", stream.getName());
-        } catch (TransactionCommitFailedException e) {
+        } catch (InterruptedException | ExecutionException e) {
             LOG.warn("Unable to register stream.", e);
         }
     }
@@ -98,9 +98,9 @@ public final class NotificationToMdsalWriter implements AutoCloseable, NetconfNo
         tx.delete(LogicalDatastoreType.OPERATIONAL, streamIdentifier);
 
         try {
-            tx.submit().checkedGet();
+            tx.commit().get();
             LOG.debug("Stream %s unregistered successfully.", stream);
-        } catch (TransactionCommitFailedException e) {
+        } catch (InterruptedException | ExecutionException e) {
             LOG.warn("Unable to unregister stream", e);
         }
     }
index 7529ab4f6caeab5ae3f1fc624473ceda27f37591..b515e260cde3f533f0ccc15a11c52b3d619d4c41 100644 (file)
@@ -5,7 +5,6 @@
  * 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.controller.config.yang.netconf.mdsal.notification;
 
 import static org.mockito.Matchers.any;
@@ -14,8 +13,8 @@ import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
-import com.google.common.util.concurrent.Futures;
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.Mock;
@@ -55,7 +54,7 @@ public class NotificationToMdsalWriterTest {
         doNothing().when(tx).merge(any(LogicalDatastoreType.class), any(InstanceIdentifier.class),
                 any(DataObject.class), anyBoolean());
         doNothing().when(tx).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
-        doReturn(Futures.immediateCheckedFuture(null)).when(tx).submit();
+        doReturn(emptyFluentFuture()).when(tx).commit();
         doReturn(tx).when(dataBroker).newWriteOnlyTransaction();
 
         writer = new NotificationToMdsalWriter(notificationCollector, dataBroker);
index 0df7fef0cb6a3f98d32939d1556b17d0ed695aea..dfa537ca8173c02cc60465c52be7158979017b5c 100644 (file)
@@ -13,6 +13,7 @@ import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
 import com.google.common.collect.ImmutableList;
 import org.junit.Before;
@@ -22,7 +23,6 @@ import org.mockito.MockitoAnnotations;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev160621.ModulesState;
@@ -36,7 +36,6 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.librar
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev160621.module.list.module.SubmoduleBuilder;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.YangIdentifier;
 import org.opendaylight.yangtools.concepts.ListenerRegistration;
-import org.opendaylight.yangtools.util.concurrent.FluentFutures;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang.model.api.SchemaContextListener;
@@ -53,8 +52,6 @@ public class SchemaServiceToMdsalWriterTest {
     private DataBroker dataBroker;
     @Mock
     private WriteTransaction writeTransaction;
-    @Mock
-    private CommitInfo info;
 
     private SchemaServiceToMdsalWriter schemaServiceToMdsalWriter;
 
@@ -64,7 +61,7 @@ public class SchemaServiceToMdsalWriterTest {
 
         when(dataBroker.newWriteOnlyTransaction()).thenReturn(writeTransaction);
         doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any());
-        doReturn(FluentFutures.immediateFluentFuture(info)).when(writeTransaction).commit();
+        doReturn(emptyFluentFuture()).when(writeTransaction).commit();
         when(schemaService.registerSchemaContextListener(any())).thenReturn(
                 new ListenerRegistration<SchemaContextListener>() {
                     @Override
index 382fa98ef94f035f1e97e464eb51b95512338632..ec825d729aca86aea028ba4e06470280c78eb834 100644 (file)
@@ -19,6 +19,7 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.MockitoAnnotations.initMocks;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
 import akka.actor.ActorSystem;
 import akka.util.Timeout;
@@ -38,7 +39,6 @@ import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
 import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
 import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService;
 import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
-import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider;
 import org.opendaylight.netconf.client.NetconfClientDispatcher;
 import org.opendaylight.netconf.client.NetconfClientSessionListener;
@@ -63,7 +63,6 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev15
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeBuilder;
-import org.opendaylight.yangtools.util.concurrent.FluentFutures;
 import scala.concurrent.duration.Duration;
 
 public class RemoteDeviceConnectorImplTest {
@@ -72,9 +71,6 @@ public class RemoteDeviceConnectorImplTest {
     private static final String TOPOLOGY_ID = "testing-topology";
     private static final Timeout TIMEOUT = new Timeout(Duration.create(5, "seconds"));
 
-    @Mock
-    private CommitInfo info;
-
     @Mock
     private DataBroker dataBroker;
 
@@ -122,7 +118,7 @@ public class RemoteDeviceConnectorImplTest {
         doReturn(writeTx).when(txChain).newWriteOnlyTransaction();
         doNothing().when(writeTx).merge(eq(LogicalDatastoreType.OPERATIONAL), any(), any());
         doReturn("Some object").when(writeTx).getIdentifier();
-        doReturn(FluentFutures.immediateFluentFuture(info)).when(writeTx).commit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
         builder = new NetconfTopologySetup.NetconfTopologySetupBuilder();
         builder.setDataBroker(dataBroker);
         builder.setRpcProviderRegistry(rpcProviderRegistry);
index 363ae63e4a37532fda97e1986322e1c1fa1cc12c..020887378ac85b467e8f8a2533069c4f568c88c1 100644 (file)
@@ -9,10 +9,10 @@ package org.opendaylight.netconf.topology.singleton.impl.actors;
 
 import static org.junit.Assert.assertEquals;
 import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.timeout;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 import static org.opendaylight.netconf.topology.singleton.impl.actors.ReadTransactionActorTestAdapter.NODE;
 import static org.opendaylight.netconf.topology.singleton.impl.actors.ReadTransactionActorTestAdapter.PATH;
 import static org.opendaylight.netconf.topology.singleton.impl.actors.ReadTransactionActorTestAdapter.STORE;
@@ -26,7 +26,6 @@ import akka.testkit.TestProbe;
 import org.junit.Test;
 import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
 import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction;
-import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.netconf.topology.singleton.messages.NormalizedNodeMessage;
 import org.opendaylight.netconf.topology.singleton.messages.transactions.CancelRequest;
 import org.opendaylight.netconf.topology.singleton.messages.transactions.DeleteRequest;
@@ -86,7 +85,7 @@ public abstract class WriteTransactionActorTestAdapter {
 
     @Test
     public void testSubmit() {
-        doReturn(FluentFutures.immediateFluentFuture(mock(CommitInfo.class))).when(mockWriteTx).commit();
+        doReturn(emptyFluentFuture()).when(mockWriteTx).commit();
         actorRef.tell(new SubmitRequest(), probe.ref());
 
         verify(mockWriteTx).commit();
index 149d727f83d2f481dac6941cf4b0f44d7c2fb188..517dbe3d310cc6f7a613def942c1e7c17a69d526 100644 (file)
@@ -15,6 +15,7 @@ import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
 import com.google.common.collect.Sets;
 import com.google.common.util.concurrent.Futures;
@@ -39,7 +40,6 @@ import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
 import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService;
-import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.netconf.client.NetconfClientDispatcher;
 import org.opendaylight.netconf.client.NetconfClientSessionListener;
 import org.opendaylight.netconf.client.conf.NetconfClientConfiguration;
@@ -65,7 +65,6 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeBuilder;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey;
-import org.opendaylight.yangtools.util.concurrent.FluentFutures;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.parser.repo.SharedSchemaRepository;
@@ -126,7 +125,7 @@ public class NetconfTopologyImplTest {
         when(dataBroker.newWriteOnlyTransaction()).thenReturn(wtx);
         doNothing().when(wtx)
                 .merge(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(DataObject.class));
-        doReturn(FluentFutures.immediateFluentFuture(mock(CommitInfo.class))).when(wtx).commit();
+        doReturn(emptyFluentFuture()).when(wtx).commit();
         topology.init();
 
         //verify initialization of topology
index 1d8b4a1aca9aeeed3cb7eb0c099008b08e3bdb8b..c9b22510270f514ed87720aca8e81735fa9c7343 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.netconf.sal.connect.netconf.sal;
 
 import com.google.common.base.Preconditions;
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.MoreExecutors;
 import java.util.ArrayList;
 import java.util.List;
@@ -20,6 +19,7 @@ import java.util.stream.Collectors;
 import org.opendaylight.controller.md.sal.binding.api.BindingTransactionChain;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.netconf.sal.connect.netconf.listener.NetconfDeviceCapabilities;
 import org.opendaylight.netconf.sal.connect.util.RemoteDeviceId;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber;
@@ -203,7 +203,7 @@ public final class NetconfDeviceTopologyAdapter implements AutoCloseable {
                 id, writeTx.getIdentifier());
 
         try {
-            writeTx.submit().get();
+            writeTx.commit().get();
         } catch (InterruptedException | ExecutionException e) {
             LOG.error("{}: Transaction(close) {} FAILED!", id, writeTx.getIdentifier(), e);
             throw new IllegalStateException(id + "  Transaction(close) not committed correctly", e);
@@ -228,9 +228,9 @@ public final class NetconfDeviceTopologyAdapter implements AutoCloseable {
         LOG.trace("{}: Committing Transaction {}:{}", id, txType,
                 transaction.getIdentifier());
 
-        Futures.addCallback(transaction.submit(), new FutureCallback<Void>() {
+        transaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.trace("{}: Transaction({}) {} SUCCESSFUL", id, txType,
                         transaction.getIdentifier());
             }
@@ -252,7 +252,7 @@ public final class NetconfDeviceTopologyAdapter implements AutoCloseable {
     }
 
     @Override
-    public void close() throws Exception {
+    public void close() {
         removeDeviceConfiguration();
     }
 
index 29d345287a28e542799d48c8ddb1064a4d4441d1..b625d749c7dad473aa49ceb7bee3dd09021942fc 100644 (file)
@@ -8,20 +8,18 @@
 
 package org.opendaylight.netconf.sal.connect.util;
 
-import com.google.common.util.concurrent.CheckedFuture;
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.MoreExecutors;
 import com.google.common.util.concurrent.SettableFuture;
 import java.util.List;
+import java.util.concurrent.ExecutionException;
 import java.util.stream.Collectors;
-import javax.annotation.Nullable;
 import org.opendaylight.aaa.encrypt.AAAEncryptionService;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.keystore.rev171017.AddKeystoreEntryInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.keystore.rev171017.AddKeystoreEntryOutput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.keystore.rev171017.AddKeystoreEntryOutputBuilder;
@@ -81,12 +79,10 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
         final WriteTransaction writeTransaction = dataBroker.newWriteOnlyTransaction();
         writeTransaction.merge(LogicalDatastoreType.CONFIGURATION, keystoreIid, keystore);
 
-        final CheckedFuture<Void, TransactionCommitFailedException> submit = writeTransaction.submit();
-
         try {
-            submit.checkedGet();
+            writeTransaction.commit().get();
             LOG.debug("init keystore done");
-        } catch (TransactionCommitFailedException exception) {
+        } catch (InterruptedException | ExecutionException exception) {
             LOG.error("Unable to initialize Netconf key-pair store.", exception);
         }
     }
@@ -106,10 +102,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<RemoveKeystoreEntryOutput>> rpcResult = SettableFuture.create();
 
-        final ListenableFuture<Void> submit = writeTransaction.submit();
-        Futures.addCallback(submit, new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("remove-key-pair success. Input: {}");
                 rpcResult.set(RpcResultBuilder.success(new RemoveKeystoreEntryOutputBuilder().build()).build());
             }
@@ -142,9 +137,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<AddKeystoreEntryOutput>> rpcResult = SettableFuture.create();
 
-        Futures.addCallback(writeTransaction.submit(), new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("add-key-pair success. Input: {}");
                 rpcResult.set(RpcResultBuilder.success(new AddKeystoreEntryOutputBuilder().build()).build());
             }
@@ -171,9 +166,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<AddTrustedCertificateOutput>> rpcResult = SettableFuture.create();
 
-        Futures.addCallback(writeTransaction.submit(), new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("add-trusted-certificate success. Input: {}", input);
                 rpcResult.set(RpcResultBuilder.success(new AddTrustedCertificateOutputBuilder().build()).build());
             }
@@ -201,9 +196,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<RemoveTrustedCertificateOutput>> rpcResult = SettableFuture.create();
 
-        Futures.addCallback(writeTransaction.submit(), new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("remove-trusted-certificate success. Input: {}", input);
                 rpcResult.set(RpcResultBuilder.success(new RemoveTrustedCertificateOutputBuilder().build()).build());
             }
@@ -229,9 +224,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<AddPrivateKeyOutput>> rpcResult = SettableFuture.create();
 
-        Futures.addCallback(writeTransaction.submit(), new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("add-private-key success. Input: {}", input);
                 rpcResult.set(RpcResultBuilder.success(new AddPrivateKeyOutputBuilder().build()).build());
             }
@@ -258,9 +253,9 @@ public class NetconfSalKeystoreService implements NetconfKeystoreService {
 
         final SettableFuture<RpcResult<RemovePrivateKeyOutput>> rpcResult = SettableFuture.create();
 
-        Futures.addCallback(writeTransaction.submit(), new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.debug("remove-private-key success. Input: {}", input);
                 rpcResult.set(RpcResultBuilder.success(new RemovePrivateKeyOutputBuilder().build()).build());
             }
index 44e4ff99aca010816ee1eea3d497c26732afbb02..3609e8cf2226e04cb5c6d2423512b6a774847825 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.netconf.sal.connect.util;
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Preconditions;
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.MoreExecutors;
 import com.google.common.util.concurrent.SettableFuture;
@@ -18,6 +17,7 @@ import org.opendaylight.aaa.encrypt.AAAEncryptionService;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.CreateDeviceInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.CreateDeviceOutput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.CreateDeviceOutputBuilder;
@@ -103,11 +103,10 @@ public class NetconfTopologyRPCProvider implements NetconfNodeTopologyService {
         final InstanceIdentifier<NetconfNode> niid = topologyPath.child(Node.class,
                 new NodeKey(nodeId)).augmentation(NetconfNode.class);
         writeTransaction.merge(LogicalDatastoreType.CONFIGURATION, niid, node, true);
-        final ListenableFuture<Void> future = writeTransaction.submit();
-        Futures.addCallback(future, new FutureCallback<Void>() {
+        writeTransaction.commit().addCallback(new FutureCallback<CommitInfo>() {
 
             @Override
-            public void onSuccess(final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.info("add-netconf-node RPC: Added netconf node successfully.");
                 futureResult.set(RpcResultBuilder.success(new CreateDeviceOutputBuilder().build()).build());
             }
@@ -130,13 +129,12 @@ public class NetconfTopologyRPCProvider implements NetconfNodeTopologyService {
         final WriteTransaction wtx = dataBroker.newWriteOnlyTransaction();
         wtx.delete(LogicalDatastoreType.CONFIGURATION, niid);
 
-        final ListenableFuture<Void> future = wtx.submit();
         final SettableFuture<RpcResult<DeleteDeviceOutput>> rpcFuture = SettableFuture.create();
 
-        Futures.addCallback(future, new FutureCallback<Void>() {
+        wtx.commit().addCallback(new FutureCallback<CommitInfo>() {
 
             @Override
-            public void onSuccess(final Void result) {
+            public void onSuccess(final CommitInfo result) {
                 LOG.info("delete-device RPC: Removed netconf node successfully.");
                 rpcFuture.set(RpcResultBuilder.success(new DeleteDeviceOutputBuilder().build()).build());
             }
index 78c586e66b765cc5891d3693cfaf9304512223dd..5ba66cac8879ef41ac22bb8db32bffd05b9b79b5 100644 (file)
@@ -5,7 +5,6 @@
  * 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.netconf.sal.connect.netconf.sal;
 
 import static org.mockito.Matchers.any;
@@ -15,8 +14,8 @@ import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
-import com.google.common.util.concurrent.Futures;
 import java.net.InetSocketAddress;
 import org.junit.Before;
 import org.junit.Test;
@@ -45,6 +44,7 @@ public class NetconfDeviceSalProviderTest {
     private DOMMountPointService mountPointService;
     @Mock
     private WriteTransaction writeTx;
+
     private NetconfDeviceSalProvider provider;
 
     @Before
@@ -54,11 +54,11 @@ public class NetconfDeviceSalProviderTest {
         doReturn(writeTx).when(chain).newWriteOnlyTransaction();
         doNothing().when(writeTx).merge(eq(LogicalDatastoreType.OPERATIONAL), any(), any());
         doReturn("Some object").when(writeTx).getIdentifier();
-        doReturn(Futures.immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
         provider = new NetconfDeviceSalProvider(new RemoteDeviceId("device1",
                 InetSocketAddress.createUnresolved("localhost", 17830)), mountPointService, dataBroker);
         when(chain.newWriteOnlyTransaction()).thenReturn(tx);
-        when(tx.submit()).thenReturn(Futures.immediateCheckedFuture(null));
+        doReturn(emptyFluentFuture()).when(tx).commit();
         when(tx.getIdentifier()).thenReturn(tx);
     }
 
index 2261cc363d990ac96dbeacf82f3591a9d3abdc0d..d5cd4af37f4cc96d4b3d27e824bcc3cff894b3cc 100644 (file)
@@ -5,7 +5,6 @@
  * 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.netconf.sal.connect.netconf.sal;
 
 import static org.junit.Assert.assertEquals;
@@ -14,9 +13,9 @@ import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
 import com.google.common.base.Optional;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.MoreExecutors;
 import java.net.InetSocketAddress;
 import java.util.EnumMap;
@@ -149,7 +148,7 @@ public class NetconfDeviceTopologyAdapterTest {
     @Test
     public void testFailedDevice() throws Exception {
 
-        doReturn(Futures.immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
         NetconfDeviceTopologyAdapter adapter = new NetconfDeviceTopologyAdapter(id, txChain);
         adapter.setDeviceAsFailed(null);
 
@@ -173,7 +172,7 @@ public class NetconfDeviceTopologyAdapterTest {
 
     @Test
     public void testDeviceUpdate() throws Exception {
-        doReturn(Futures.immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
 
         NetconfDeviceTopologyAdapter adapter = new NetconfDeviceTopologyAdapter(id, txChain);
         adapter.updateDeviceData(true, new NetconfDeviceCapabilities());
@@ -207,18 +206,18 @@ public class NetconfDeviceTopologyAdapterTest {
 
         DOMDataWriteTransaction wtx =  domDataBroker.newWriteOnlyTransaction();
         wtx.put(LogicalDatastoreType.OPERATIONAL, pathToAugmentedLeaf, augmentNode);
-        wtx.submit().get(5, TimeUnit.SECONDS);
+        wtx.commit().get(5, TimeUnit.SECONDS);
 
         adapter.updateDeviceData(true, new NetconfDeviceCapabilities());
         Optional<NormalizedNode<?, ?>> testNode = domDataBroker.newReadOnlyTransaction()
-                .read(LogicalDatastoreType.OPERATIONAL, pathToAugmentedLeaf).checkedGet(2, TimeUnit.SECONDS);
+                .read(LogicalDatastoreType.OPERATIONAL, pathToAugmentedLeaf).get(2, TimeUnit.SECONDS);
 
         assertEquals("Augmented node data should be still present after device update.", true, testNode.isPresent());
         assertEquals("Augmented data should be the same as before update node.", dataTestId, testNode.get().getValue());
 
         adapter.setDeviceAsFailed(null);
         testNode = domDataBroker.newReadOnlyTransaction()
-                .read(LogicalDatastoreType.OPERATIONAL, pathToAugmentedLeaf).checkedGet(2, TimeUnit.SECONDS);
+                .read(LogicalDatastoreType.OPERATIONAL, pathToAugmentedLeaf).get(2, TimeUnit.SECONDS);
 
         assertEquals("Augmented node data should be still present after device failed.", true, testNode.isPresent());
         assertEquals("Augmented data should be the same as before failed device.",
@@ -254,14 +253,14 @@ public class NetconfDeviceTopologyAdapterTest {
 
     @Test
     public void testRemoveDeviceConfiguration() throws Exception {
-        doReturn(Futures.immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
 
         NetconfDeviceTopologyAdapter adapter = new NetconfDeviceTopologyAdapter(id, txChain);
         adapter.close();
 
         verify(txChain, times(2)).newWriteOnlyTransaction();
         verify(writeTx).delete(LogicalDatastoreType.OPERATIONAL, id.getTopologyBindingPath());
-        verify(writeTx, times(2)).submit();
+        verify(writeTx, times(2)).commit();
     }
 
 }
index 2f912bd9af9cb401cef3b27e5b315490f9fdb14f..583ab79b6e519a832d68105ff038edd523246964 100644 (file)
@@ -25,6 +25,7 @@ import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTr
 import com.google.common.util.concurrent.CheckedFuture;
 import com.google.common.util.concurrent.Futures;
 import java.net.InetSocketAddress;
+import java.util.concurrent.ExecutionException;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -33,7 +34,6 @@ import org.mockito.InOrder;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
 import org.opendaylight.controller.md.sal.dom.api.DOMRpcService;
 import org.opendaylight.controller.md.sal.dom.spi.DefaultDOMRpcResult;
 import org.opendaylight.netconf.sal.connect.netconf.schema.mapping.BaseSchema;
@@ -63,7 +63,7 @@ public class NetconfDeviceWriteOnlyTxTest {
         MockitoAnnotations.initMocks(this);
 
         final CheckedFuture<DefaultDOMRpcResult, Exception> successFuture =
-                Futures.immediateCheckedFuture(new DefaultDOMRpcResult(((NormalizedNode<?, ?>) null)));
+                Futures.immediateCheckedFuture(new DefaultDOMRpcResult((NormalizedNode<?, ?>) null));
 
         doReturn(successFuture)
                 .doReturn(Futures.immediateFailedCheckedFuture(new IllegalStateException("Failed tx")))
@@ -87,13 +87,12 @@ public class NetconfDeviceWriteOnlyTxTest {
     }
 
     @Test
-    public void testDiscardChanges() {
+    public void testDiscardChanges() throws InterruptedException {
         final WriteCandidateTx tx = new WriteCandidateTx(id, new NetconfBaseOps(rpc, mock(SchemaContext.class)),
                 false);
-        final CheckedFuture<Void, TransactionCommitFailedException> submitFuture = tx.submit();
         try {
-            submitFuture.checkedGet();
-        } catch (final TransactionCommitFailedException e) {
+            tx.commit().get();
+        } catch (final ExecutionException e) {
             // verify discard changes was sent
             final InOrder inOrder = inOrder(rpc);
             inOrder.verify(rpc).invokeRpc(toPath(NetconfMessageTransformUtil.NETCONF_LOCK_QNAME),
@@ -115,20 +114,18 @@ public class NetconfDeviceWriteOnlyTxTest {
         final CheckedFuture<DefaultDOMRpcResult, Exception> rpcErrorFuture = Futures.immediateCheckedFuture(
                 new DefaultDOMRpcResult(RpcResultBuilder.newError(RpcError.ErrorType.APPLICATION, "a", "m")));
 
-        doReturn(Futures.immediateCheckedFuture(new DefaultDOMRpcResult(((NormalizedNode<?, ?>) null))))
+        doReturn(Futures.immediateCheckedFuture(new DefaultDOMRpcResult((NormalizedNode<?, ?>) null)))
         .doReturn(rpcErrorFuture).when(rpc).invokeRpc(any(SchemaPath.class), any(NormalizedNode.class));
 
         final WriteCandidateTx tx = new WriteCandidateTx(id, new NetconfBaseOps(rpc, mock(SchemaContext.class)),
                 false);
 
-        final CheckedFuture<Void, TransactionCommitFailedException> submitFuture = tx.submit();
         try {
-            submitFuture.checkedGet();
-        } catch (final TransactionCommitFailedException e) {
-            return;
+            tx.commit().get();
+            fail("Submit should fail");
+        } catch (final ExecutionException e) {
+            // Intended
         }
-
-        fail("Submit should fail");
     }
 
     @Test
@@ -141,7 +138,7 @@ public class NetconfDeviceWriteOnlyTxTest {
                 id, new NetconfBaseOps(rpc, BaseSchema.BASE_NETCONF_CTX_WITH_NOTIFICATIONS.getSchemaContext()), false);
 
         tx.delete(LogicalDatastoreType.CONFIGURATION, yangIId);
-        tx.submit();
+        tx.commit();
         // verify discard changes was sent
         final InOrder inOrder = inOrder(rpc);
         inOrder.verify(rpc).invokeRpc(toPath(NetconfMessageTransformUtil.NETCONF_LOCK_QNAME),
@@ -161,7 +158,7 @@ public class NetconfDeviceWriteOnlyTxTest {
         final TxListener listener = mock(TxListener.class);
         tx.addListener(listener);
         tx.delete(LogicalDatastoreType.CONFIGURATION, yangIId);
-        tx.submit();
+        tx.commit();
         verify(listener).onTransactionSubmitted(tx);
         verify(listener).onTransactionSuccessful(tx);
         verify(listener, never()).onTransactionFailed(eq(tx), any());
@@ -194,7 +191,7 @@ public class NetconfDeviceWriteOnlyTxTest {
         final TxListener listener = mock(TxListener.class);
         tx.addListener(listener);
         tx.delete(LogicalDatastoreType.CONFIGURATION, yangIId);
-        tx.submit();
+        tx.commit();
         final ArgumentCaptor<Exception> excCaptor = ArgumentCaptor.forClass(Exception.class);
         verify(listener).onTransactionSubmitted(tx);
         verify(listener).onTransactionFailed(eq(tx), excCaptor.capture());
index 384d83d5f144ab83ec95d62546d52d0e22d00502..35225d724e1d31cdb9404c7b265d6a352152f637 100644 (file)
@@ -112,7 +112,7 @@ public class TxChainTest {
     public void testChainFail() throws Exception {
         final AbstractWriteTx writeTx = chain.newWriteOnlyTransaction();
         verify(writeOnlyTx1).addListener(captor.capture());
-        writeTx.submit();
+        writeTx.commit();
         final TransactionCommitFailedException cause = new TransactionCommitFailedException("fail");
         captor.getValue().onTransactionFailed(writeOnlyTx1, cause);
         verify(registration1).close();
@@ -124,7 +124,7 @@ public class TxChainTest {
         final AbstractWriteTx writeTx = chain.newWriteOnlyTransaction();
         chain.close();
         verify(writeOnlyTx1).addListener(captor.capture());
-        writeTx.submit();
+        writeTx.commit();
         captor.getValue().onTransactionSuccessful(writeOnlyTx1);
         verify(registration1).close();
         verify(listener).onTransactionChainSuccessful(chain);
@@ -146,7 +146,7 @@ public class TxChainTest {
         final ArgumentCaptor<TxListener> captor1 = ArgumentCaptor.forClass(TxListener.class);
         verify(writeOnlyTx1).addListener(captor1.capture());
         //submit 1st tx
-        writeTx1.submit();
+        writeTx1.commit();
         captor1.getValue().onTransactionSubmitted(writeOnlyTx1);
 
         //create 2nd tx
@@ -154,7 +154,7 @@ public class TxChainTest {
         final ArgumentCaptor<TxListener> captor2 = ArgumentCaptor.forClass(TxListener.class);
         verify(writeTx2).addListener(captor2.capture());
         //submit 2nd tx
-        writeTx2.submit();
+        writeTx2.commit();
         captor2.getValue().onTransactionSubmitted(writeOnlyTx2);
 
         //create 3rd tx
@@ -185,7 +185,7 @@ public class TxChainTest {
         final ArgumentCaptor<TxListener> captor1 = ArgumentCaptor.forClass(TxListener.class);
         verify(writeOnlyTx1).addListener(captor1.capture());
         //submit 1st tx
-        writeTx1.submit();
+        writeTx1.commit();
         captor1.getValue().onTransactionSubmitted(writeOnlyTx1);
 
         //create 2nd tx
@@ -193,7 +193,7 @@ public class TxChainTest {
         final ArgumentCaptor<TxListener> captor2 = ArgumentCaptor.forClass(TxListener.class);
         verify(writeTx2).addListener(captor2.capture());
         //submit 2nd tx
-        writeTx2.submit();
+        writeTx2.commit();
         captor2.getValue().onTransactionSubmitted(writeOnlyTx2);
 
         //create 3rd tx
index a7a427e7ef388f2880ed7c4e3c84c62e87f4c9d3..c2bc6d776515f187c3bc7f4793ca481e235b59cd 100644 (file)
@@ -72,7 +72,7 @@ public class WriteCandidateRunningTxTest {
         //check, if both edits are called
         verify(rpc, times(2)).invokeRpc(
                 eq(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_EDIT_CONFIG_QNAME)), any());
-        tx.submit().get();
+        tx.commit().get();
         //check, if unlock is called
         verify(rpc).invokeRpc(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_COMMIT_QNAME),
                 NetconfMessageTransformUtil.COMMIT_RPC_CONTENT);
index 917fb486b669e69502789b594f30289679634803..7eddf57c7d45f8137a59d3c802c8738b846cf07e 100644 (file)
@@ -58,7 +58,7 @@ public class WriteCandidateTxTest {
         //check, if both edits are called
         verify(rpc, times(2))
                 .invokeRpc(eq(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_EDIT_CONFIG_QNAME)), any());
-        tx.submit().get();
+        tx.commit().get();
         //check, if unlock is called
         verify(rpc).invokeRpc(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_COMMIT_QNAME),
                 NetconfMessageTransformUtil.COMMIT_RPC_CONTENT);
index 30f75b11aca593a55a8d230915c0594d887b9811..bb962d234af7dd80c5c03be8fccdb601eff06427 100644 (file)
@@ -58,7 +58,7 @@ public class WriteRunningTxTest {
         //check, if no edit-config is called before submit
         verify(rpc, never())
                 .invokeRpc(eq(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_EDIT_CONFIG_QNAME)), any());
-        tx.submit().get();
+        tx.commit().get();
         //check, if both edits are called
         verify(rpc, times(2))
                 .invokeRpc(eq(SchemaPath.create(true, NetconfMessageTransformUtil.NETCONF_EDIT_CONFIG_QNAME)), any());
index 1d85790b6befbf014fbb5a9e103f92811b5e2a0f..531f3de75ac1aaac2a287f521e61c37d9e3a19f4 100644 (file)
@@ -12,8 +12,8 @@ import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
-import com.google.common.util.concurrent.Futures;
 import java.util.ArrayList;
 import java.util.List;
 import org.junit.Before;
@@ -24,7 +24,6 @@ import org.opendaylight.aaa.encrypt.AAAEncryptionService;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
 import org.opendaylight.netconf.api.xml.XmlUtil;
 import org.opendaylight.netconf.sal.connect.util.NetconfSalKeystoreService;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.keystore.rev171017.AddPrivateKeyInput;
@@ -69,7 +68,7 @@ public class NetconfSalKeystoreServiceTest {
 
     @Test
     public void testAddPrivateKey() throws Exception {
-        doReturn(Futures.<Void, TransactionCommitFailedException>immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
         NetconfSalKeystoreService keystoreService = new NetconfSalKeystoreService(dataBroker, encryptionService);
 
         final AddPrivateKeyInput input = getPrivateKeyInput();
@@ -81,7 +80,7 @@ public class NetconfSalKeystoreServiceTest {
 
     @Test
     public void testAddTrustedCertificate() throws Exception {
-        doReturn(Futures.<Void, TransactionCommitFailedException>immediateCheckedFuture(null)).when(writeTx).submit();
+        doReturn(emptyFluentFuture()).when(writeTx).commit();
         NetconfSalKeystoreService keystoreService = new NetconfSalKeystoreService(dataBroker, encryptionService);
 
         final AddTrustedCertificateInput input = getTrustedCertificateInput();
index e9270c4f1ee2846b892caf7ebe8a2725f0cc27d7..5e381cdc5f059539eed54ffcac4e327727c86e1e 100644 (file)
@@ -12,7 +12,6 @@ import com.google.common.base.Predicate;
 import com.google.common.base.Strings;
 import com.google.common.collect.Iterables;
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.MoreExecutors;
 import java.io.File;
 import java.util.ArrayList;
@@ -21,6 +20,7 @@ import javax.annotation.Nullable;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev160621.ModulesState;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev160621.ModulesStateBuilder;
@@ -124,9 +124,9 @@ public class YangLibProvider implements AutoCloseable, SchemaSourceListener {
         tx.merge(LogicalDatastoreType.OPERATIONAL, InstanceIdentifier.create(ModulesState.class),
                 new ModulesStateBuilder().setModule(newModules).build());
 
-        Futures.addCallback(tx.submit(), new FutureCallback<Void>() {
+        tx.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(@Nullable final CommitInfo result) {
                 LOG.debug("Modules state successfully populated with new modules");
             }
 
@@ -153,9 +153,9 @@ public class YangLibProvider implements AutoCloseable, SchemaSourceListener {
                                         new YangIdentifier(source.getSourceIdentifier().getName()),
                                         RevisionUtils.fromYangCommon(source.getSourceIdentifier().getRevision()))));
 
-        Futures.addCallback(tx.submit(), new FutureCallback<Void>() {
+        tx.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(@Nullable final Void result) {
+            public void onSuccess(@Nullable final CommitInfo result) {
                 LOG.debug("Modules state successfully updated.");
             }
 
index f6c712976fc0981f1080ddfe3b456b1374bb2d1b..a31c75cb833d79aa196b68b0472e09c9ac7ee114 100644 (file)
@@ -11,12 +11,13 @@ import static org.junit.Assert.assertEquals;
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyZeroInteractions;
 import static org.mockito.Mockito.when;
+import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture;
 
-import com.google.common.util.concurrent.Futures;
 import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
@@ -112,7 +113,7 @@ public class YangLibProviderTest {
                             org.opendaylight.yangtools.yang.common.Revision.of("2016-04-28")),
                         YangTextSchemaSource.class, PotentialSchemaSource.Costs.IMMEDIATE.getValue()));
 
-        when(writeTransaction.submit()).thenReturn(Futures.immediateCheckedFuture(null));
+        doReturn(emptyFluentFuture()).when(writeTransaction).commit();
         yangLibProvider.schemaSourceRegistered(list);
 
         List<Module> newModulesList = new ArrayList<>();
@@ -137,7 +138,7 @@ public class YangLibProviderTest {
         verify(writeTransaction).merge(eq(LogicalDatastoreType.OPERATIONAL),
                 eq(InstanceIdentifier.create(ModulesState.class)),
                 eq(new ModulesStateBuilder().setModule(newModulesList).build()));
-        verify(writeTransaction).submit();
+        verify(writeTransaction).commit();
     }
 
     @Test
@@ -173,7 +174,7 @@ public class YangLibProviderTest {
                         YangTextSchemaSource.class, PotentialSchemaSource.Costs.IMMEDIATE.getValue()));
 
         when(dataBroker.newWriteOnlyTransaction()).thenReturn(writeTransaction);
-        when(writeTransaction.submit()).thenReturn(Futures.immediateCheckedFuture(null));
+        doReturn(emptyFluentFuture()).when(writeTransaction).commit();
         yangLibProvider.schemaSourceRegistered(potentialSources);
         verify(dataBroker).newWriteOnlyTransaction();
 
@@ -181,7 +182,7 @@ public class YangLibProviderTest {
         verify(writeTransaction).merge(eq(LogicalDatastoreType.OPERATIONAL),
                 eq(InstanceIdentifier.create(ModulesState.class)), modulesStateCaptor.capture());
         assertEquals(modulesStateCaptor.getValue().getModule().size(), 1);
-        verify(writeTransaction).submit();
+        verify(writeTransaction).commit();
     }
 
     @Test
@@ -207,7 +208,7 @@ public class YangLibProviderTest {
         doNothing().when(writeTransaction)
                 .delete(eq(LogicalDatastoreType.OPERATIONAL), any(InstanceIdentifier.class));
 
-        when(writeTransaction.submit()).thenReturn(Futures.immediateCheckedFuture(null));
+        doReturn(emptyFluentFuture()).when(writeTransaction).commit();
 
         PotentialSchemaSource<YangTextSchemaSource> yangUnregistererSource =
                 PotentialSchemaSource.create(
@@ -223,7 +224,7 @@ public class YangLibProviderTest {
                                 new ModuleKey(new YangIdentifier("unregistered-yang-schema-without-revision"),
                                         RevisionUtils.emptyRevision()))));
 
-        verify(writeTransaction).submit();
+        verify(writeTransaction).commit();
 
         yangUnregistererSource =
                 PotentialSchemaSource.create(
@@ -240,6 +241,6 @@ public class YangLibProviderTest {
                                 new ModuleKey(new YangIdentifier("unregistered-yang-with-revision"),
                                         new Revision(new RevisionIdentifier("2016-04-28"))))));
 
-        verify(writeTransaction, times(2)).submit();
+        verify(writeTransaction, times(2)).commit();
     }
 }