Move mdsal-trace into its place
[mdsal.git] / trace / mdsal-trace-impl / src / main / java / org / opendaylight / mdsal / trace / impl / TracingReadWriteTransaction.java
@@ -5,44 +5,40 @@
  * 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.md.sal.trace.dom.impl;
+package org.opendaylight.mdsal.trace.impl;
+
+import static java.util.Objects.requireNonNull;
 
-import com.google.common.base.Optional;
-import com.google.common.util.concurrent.CheckedFuture;
 import com.google.common.util.concurrent.FluentFuture;
-import java.util.Objects;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataReadWriteTransaction;
-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 java.util.Optional;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.mdsal.common.api.CommitInfo;
+import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
+import org.opendaylight.mdsal.dom.api.DOMDataTreeReadWriteTransaction;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
 class TracingReadWriteTransaction
     extends AbstractTracingWriteTransaction
-        implements DOMDataReadWriteTransaction, CloseTracked<TracingReadWriteTransaction> {
+        implements DOMDataTreeReadWriteTransaction, CloseTracked<TracingReadWriteTransaction> {
 
     private final CloseTrackedTrait<TracingReadWriteTransaction> closeTracker;
-    private final DOMDataReadWriteTransaction delegate;
+    private final DOMDataTreeReadWriteTransaction delegate;
 
-    TracingReadWriteTransaction(DOMDataReadWriteTransaction delegate, TracingBroker tracingBroker,
+    TracingReadWriteTransaction(DOMDataTreeReadWriteTransaction delegate, TracingBroker tracingBroker,
             CloseTrackedRegistry<TracingReadWriteTransaction> readWriteTransactionsRegistry) {
         super(delegate, tracingBroker);
         this.closeTracker = new CloseTrackedTrait<>(readWriteTransactionsRegistry, this);
-        this.delegate = Objects.requireNonNull(delegate);
+        this.delegate = requireNonNull(delegate);
     }
 
     @Override
-    public CheckedFuture<Optional<NormalizedNode<?, ?>>, ReadFailedException> read(
-                                                            LogicalDatastoreType store, YangInstanceIdentifier yiid) {
+    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(LogicalDatastoreType store, YangInstanceIdentifier yiid) {
         return delegate.read(store, yiid);
     }
 
     @Override
-    public CheckedFuture<Boolean, ReadFailedException> exists(LogicalDatastoreType store, YangInstanceIdentifier yiid) {
+    public FluentFuture<Boolean> exists(LogicalDatastoreType store, YangInstanceIdentifier yiid) {
         return delegate.exists(store, yiid);
     }
 
@@ -59,7 +55,7 @@ class TracingReadWriteTransaction
     }
 
     @Override
-    public StackTraceElement[] getAllocationContextStackTrace() {
+    public @Nullable StackTraceElement[] getAllocationContextStackTrace() {
         return closeTracker.getAllocationContextStackTrace();
     }