Remove deprecated MD-SAL APIs
[controller.git] / opendaylight / md-sal / sal-dom-compat / src / main / java / org / opendaylight / controller / sal / core / compat / DOMTransactionChainAdapter.java
diff --git a/opendaylight/md-sal/sal-dom-compat/src/main/java/org/opendaylight/controller/sal/core/compat/DOMTransactionChainAdapter.java b/opendaylight/md-sal/sal-dom-compat/src/main/java/org/opendaylight/controller/sal/core/compat/DOMTransactionChainAdapter.java
deleted file mode 100644 (file)
index d6b5e5c..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (c) 2018 Pantheon Technologies, s.r.o. 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.controller.sal.core.compat;
-
-import static java.util.Objects.requireNonNull;
-
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import com.google.common.collect.ForwardingObject;
-import java.util.function.Function;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionChain;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataReadWriteTransaction;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction;
-import org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain;
-import org.opendaylight.mdsal.dom.api.DOMDataTreeReadTransaction;
-import org.opendaylight.mdsal.dom.api.DOMDataTreeReadWriteTransaction;
-import org.opendaylight.mdsal.dom.api.DOMDataTreeTransaction;
-import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction;
-import org.opendaylight.mdsal.dom.api.DOMTransactionChainListener;
-
-@Deprecated(forRemoval = true)
-public class DOMTransactionChainAdapter extends ForwardingObject
-        implements org.opendaylight.mdsal.dom.api.DOMTransactionChain, TransactionChainListener {
-    private final Cache<AsyncTransaction<?, ?>, DOMDataTreeTransaction> transactions = CacheBuilder.newBuilder()
-            .weakKeys().weakValues().build();
-
-    private final DOMTransactionChainListener listener;
-    private final DOMTransactionChain delegate;
-
-    public DOMTransactionChainAdapter(final DOMTransactionChainListener listener,
-            final Function<TransactionChainListener, DOMTransactionChain> function) {
-        this.listener = requireNonNull(listener);
-        this.delegate = function.apply(this);
-    }
-
-    @Override
-    public void close() {
-        delegate().close();
-        transactions.invalidateAll();
-    }
-
-    @Override
-    public DOMDataTreeReadTransaction newReadOnlyTransaction() {
-        final DOMDataReadOnlyTransaction tx = delegate.newReadOnlyTransaction();
-        return track(tx, new DOMDataTreeReadTransactionAdapter(tx) {
-            @Override
-            public void close() {
-                untrack(delegate());
-                super.close();
-            }
-        });
-    }
-
-    @Override
-    public DOMDataTreeWriteTransaction newWriteOnlyTransaction() {
-        final DOMDataWriteTransaction tx = delegate.newWriteOnlyTransaction();
-        return track(tx, new DOMDataTreeWriteTransactionAdapter(tx) {
-            @Override
-            public boolean cancel() {
-                untrack(delegate());
-                return super.cancel();
-            }
-        });
-    }
-
-    @Override
-    public DOMDataTreeReadWriteTransaction newReadWriteTransaction() {
-        final DOMDataReadWriteTransaction tx = delegate.newReadWriteTransaction();
-        return track(tx, new DOMDataTreeReadWriteTransactionAdapter(tx) {
-            @Override
-            public boolean cancel() {
-                untrack(delegate());
-                return super.cancel();
-            }
-        });
-    }
-
-    @Override
-    public void onTransactionChainFailed(final TransactionChain<?, ?> chain, final AsyncTransaction<?, ?> transaction,
-            final Throwable cause) {
-        listener.onTransactionChainFailed(this, null, cause);
-    }
-
-    @Override
-    public void onTransactionChainSuccessful(final TransactionChain<?, ?> chain) {
-        listener.onTransactionChainSuccessful(this);
-    }
-
-    @Override
-    protected DOMTransactionChain delegate() {
-        return delegate;
-    }
-
-    private <T extends DOMDataTreeTransaction> T track(final AsyncTransaction<?, ?> controllerTx, final T mdsalTx) {
-        transactions.put(controllerTx, mdsalTx);
-        return mdsalTx;
-    }
-
-    void untrack(final AsyncTransaction<?, ?> controllerTx) {
-        transactions.invalidate(controllerTx);
-    }
-}