X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-inmemory-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fdom%2Fstore%2Fimpl%2Ftree%2FListenerWalker.java;h=7b8add90379010bdeeb03a860524e8f89d92e497;hb=ec4f22051dc6a102e5760a8d680f75805d4d3be6;hp=0c297a2e2b5091c39c5c85784291c21fc7bb3cab;hpb=bd8beb1bfee9f421ad8f2d07b1424b21038234a2;p=controller.git diff --git a/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/ListenerWalker.java b/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/ListenerWalker.java index 0c297a2e2b..7b8add9037 100644 --- a/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/ListenerWalker.java +++ b/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/ListenerWalker.java @@ -8,37 +8,31 @@ package org.opendaylight.controller.md.sal.dom.store.impl.tree; import com.google.common.base.Preconditions; -import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; -import java.util.concurrent.locks.Lock; +import org.opendaylight.controller.md.sal.dom.store.impl.DataChangeListenerRegistration; +import org.opendaylight.mdsal.dom.spi.RegistrationTreeSnapshot; /** * A walking context, pretty much equivalent to an iterator, but it * exposes the underlying tree structure. * * @author Robert Varga + * + * @deprecated Superseded by {@link RegistrationTreeSnapshot}. */ +@Deprecated public class ListenerWalker implements AutoCloseable { - private static final AtomicIntegerFieldUpdater CLOSED_UPDATER = AtomicIntegerFieldUpdater.newUpdater(ListenerWalker.class, "closed"); - private final Lock lock; - private final ListenerNode node; - - // Used via CLOSED_UPDATER - @SuppressWarnings("unused") - private volatile int closed = 0; + private final RegistrationTreeSnapshot> delegate; - ListenerWalker(final Lock lock, final ListenerNode node) { - this.lock = Preconditions.checkNotNull(lock); - this.node = Preconditions.checkNotNull(node); + ListenerWalker(final RegistrationTreeSnapshot> delegate) { + this.delegate = Preconditions.checkNotNull(delegate); } public ListenerNode getRootNode() { - return node; + return new ListenerNode(delegate.getRootNode()); } @Override public void close() { - if (CLOSED_UPDATER.compareAndSet(this, 0, 1)) { - lock.unlock(); - } + delegate.close(); } } \ No newline at end of file