X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-dom-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcore%2Fspi%2Fdata%2FSnapshotBackedReadTransaction.java;h=688d1e37e78829b0893cb84550b78eda668306d6;hb=refs%2Fchanges%2F04%2F69104%2F2;hp=8e5957c71a3f76e6f7a62ac146cce8bfbe4e6159;hpb=559c2b6afa7714572e01b52029acaa4d5a7315e2;p=controller.git diff --git a/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/SnapshotBackedReadTransaction.java b/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/SnapshotBackedReadTransaction.java index 8e5957c71a..688d1e37e7 100644 --- a/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/SnapshotBackedReadTransaction.java +++ b/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/SnapshotBackedReadTransaction.java @@ -8,6 +8,7 @@ package org.opendaylight.controller.sal.core.spi.data; import static com.google.common.base.Preconditions.checkNotNull; + import com.google.common.annotations.Beta; import com.google.common.base.Optional; import com.google.common.base.Preconditions; @@ -21,16 +22,17 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** + * Implementation of read-only transaction backed by {@link DataTreeSnapshot}. * - * Implementation of read-only transaction backed by {@link DataTreeSnapshot} - * + *

* Implementation of read-only transaction backed by {@link DataTreeSnapshot} * which delegates most of its calls to similar methods provided by underlying snapshot. * - * identifier type + * @param identifier type */ @Beta -public final class SnapshotBackedReadTransaction extends AbstractDOMStoreTransaction implements DOMStoreReadTransaction { +public final class SnapshotBackedReadTransaction extends AbstractDOMStoreTransaction + implements DOMStoreReadTransaction { private static final Logger LOG = LoggerFactory.getLogger(SnapshotBackedReadTransaction.class); private volatile DataTreeSnapshot stableSnapshot; @@ -54,6 +56,7 @@ public final class SnapshotBackedReadTransaction extends AbstractDOMStoreTran } @Override + @SuppressWarnings("checkstyle:IllegalCatch") public CheckedFuture>, ReadFailedException> read(final YangInstanceIdentifier path) { LOG.debug("Tx: {} Read: {}", getIdentifier(), path); checkNotNull(path, "Path must not be null."); @@ -64,8 +67,8 @@ public final class SnapshotBackedReadTransaction extends AbstractDOMStoreTran } try { - return Futures.immediateCheckedFuture(snapshot.readNode(path)); - } catch (Exception e) { + return Futures.immediateCheckedFuture(Optional.fromJavaUtil(snapshot.readNode(path))); + } catch (RuntimeException e) { LOG.error("Tx: {} Failed Read of {}", getIdentifier(), path, e); return Futures.immediateFailedCheckedFuture(new ReadFailedException("Read failed",e)); }