Expose completion future from WriteOperations
[mdsal.git] / binding / mdsal-binding-util / src / main / java / org / opendaylight / mdsal / binding / util / TransactionAdapter.java
index 0178224b2ed8ce7901377eebb36ab80a7b42dc39..0d0c5e7bc9d1e45c06d9d0457ec2791763c8f1e9 100644 (file)
@@ -12,7 +12,6 @@ import static com.google.common.base.Preconditions.checkArgument;
 import com.google.common.collect.ForwardingObject;
 import com.google.common.util.concurrent.FluentFuture;
 import java.util.Optional;
-import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.mdsal.binding.api.DataBroker;
 import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
 import org.opendaylight.mdsal.binding.api.WriteTransaction;
@@ -87,10 +86,10 @@ public final class TransactionAdapter {
         }
 
         @Override
-        public <T extends DataObject> void put(final LogicalDatastoreType store, final InstanceIdentifier<T> path,
-                final T data, final boolean createMissingParents) {
+        public <T extends DataObject> void mergeParentStructurePut(final LogicalDatastoreType store,
+                final InstanceIdentifier<T> path, final T data) {
             checkStore(store);
-            delegate.put(path, data, createMissingParents);
+            delegate.mergeParentStructurePut(path, data);
         }
 
         @Override
@@ -101,10 +100,10 @@ public final class TransactionAdapter {
         }
 
         @Override
-        public <T extends DataObject> void merge(final LogicalDatastoreType store, final InstanceIdentifier<T> path,
-                final T data, final boolean createMissingParents) {
+        public <T extends DataObject> void mergeParentStructureMerge(final LogicalDatastoreType store,
+                final InstanceIdentifier<T> path, final T data) {
             checkStore(store);
-            delegate.merge(path, data, createMissingParents);
+            delegate.mergeParentStructureMerge(path, data);
         }
 
         @Override
@@ -119,7 +118,7 @@ public final class TransactionAdapter {
         }
 
         @Override
-        public @NonNull FluentFuture<? extends CommitInfo> commit() {
+        public FluentFuture<? extends CommitInfo> commit() {
             throw new UnsupportedOperationException("Managed transactions must not be committed");
         }
 
@@ -128,6 +127,11 @@ public final class TransactionAdapter {
             return delegate.getIdentifier();
         }
 
+        @Override
+        public FluentFuture<?> completionFuture() {
+            return delegate.completionFuture();
+        }
+
         @Override
         protected D delegate() {
             return delegate;