Default AsyncWriteTransaction.submit()
[controller.git] / opendaylight / md-sal / mdsal-trace / dom-impl / src / main / java / org / opendaylight / controller / md / sal / trace / dom / impl / TracingWriteTransaction.java
index 719944ad77a3322830a6d514291b892547a7660b..5fe313f1555ccc189322d872e62508c890aa76d9 100644 (file)
@@ -7,16 +7,12 @@
  */
 package org.opendaylight.controller.md.sal.trace.dom.impl;
 
-import com.google.common.util.concurrent.CheckedFuture;
-import com.google.common.util.concurrent.ListenableFuture;
-import java.time.Instant;
-import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import com.google.common.util.concurrent.FluentFuture;
 import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction;
 import org.opendaylight.controller.md.sal.trace.closetracker.impl.CloseTracked;
 import org.opendaylight.controller.md.sal.trace.closetracker.impl.CloseTrackedRegistry;
 import org.opendaylight.controller.md.sal.trace.closetracker.impl.CloseTrackedTrait;
-import org.opendaylight.yangtools.yang.common.RpcResult;
+import org.opendaylight.mdsal.common.api.CommitInfo;
 
 class TracingWriteTransaction extends AbstractTracingWriteTransaction
         implements CloseTracked<TracingWriteTransaction> {
@@ -26,17 +22,11 @@ class TracingWriteTransaction extends AbstractTracingWriteTransaction
     TracingWriteTransaction(DOMDataWriteTransaction delegate, TracingBroker tracingBroker,
             CloseTrackedRegistry<TracingWriteTransaction> writeTransactionsRegistry) {
         super(delegate, tracingBroker);
-        this.closeTracker = new CloseTrackedTrait<>(writeTransactionsRegistry);
+        this.closeTracker = new CloseTrackedTrait<>(writeTransactionsRegistry, this);
     }
 
     @Override
-    public CheckedFuture<Void, TransactionCommitFailedException> submit() {
-        closeTracker.removeFromTrackedRegistry();
-        return super.submit();
-    }
-
-    @Override
-    public ListenableFuture<RpcResult<TransactionStatus>> commit() {
+    public FluentFuture<? extends CommitInfo> commit() {
         closeTracker.removeFromTrackedRegistry();
         return super.commit();
     }
@@ -48,13 +38,13 @@ class TracingWriteTransaction extends AbstractTracingWriteTransaction
     }
 
     @Override
-    public Instant getObjectCreated() {
-        return closeTracker.getObjectCreated();
+    public StackTraceElement[] getAllocationContextStackTrace() {
+        return closeTracker.getAllocationContextStackTrace();
     }
 
     @Override
-    public StackTraceElement[] getAllocationContextStackTrace() {
-        return closeTracker.getAllocationContextStackTrace();
+    public CloseTracked<TracingWriteTransaction> getRealCloseTracked() {
+        return this;
     }
 
 }