/** * Exposed for {@link SnapshotBackedReadWriteTransaction}'s sake only. The contract does * not allow data access after the transaction has been closed or readied. * * @param path Path to read * @return null if the the transaction has been closed; */ final Optional<NormalizedNode<?, ?>> readSnapshotNode(final YangInstanceIdentifier path) { return readyImpl == null ? null : mutableTree.readNode(path); }
/** * Exposed for {@link SnapshotBackedReadWriteTransaction}'s sake only. The contract does * not allow data access after the transaction has been closed or readied. * * @param path Path to read * @return null if the the transaction has been closed; */ final Optional<NormalizedNode<?, ?>> readSnapshotNode(final YangInstanceIdentifier path) { return readyImpl == null ? null : mutableTree.readNode(path); }
@Override public synchronized Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier path) { return delegate.readNode(path); }
@Override public Optional<NormalizedNode<?, ?>> readNode(YangInstanceIdentifier yangInstanceIdentifier) { return delegate.readNode(yangInstanceIdentifier); }
@Override public synchronized Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier path) { return delegate.readNode(path); }
@Override CheckedFuture<Optional<NormalizedNode<?, ?>>, ReadFailedException> doRead(final YangInstanceIdentifier path) { return Futures.immediateCheckedFuture(modification.readNode(path)); }
/** * Exposed for {@link SnapshotBackedReadWriteTransaction}'s sake only. The contract does * not allow data access after the transaction has been closed or readied. * * @param path Path to read * @return null if the the transaction has been closed; */ final Optional<NormalizedNode<?, ?>> readSnapshotNode(final YangInstanceIdentifier path) { return readyImpl == null ? null : Optional.fromJavaUtil(mutableTree.readNode(path)); }
@Override public CheckedFuture<Optional<NormalizedNode<?, ?>>, ReadFailedException> read( @Nonnull final YangInstanceIdentifier path) { // TODO(HONEYCOMB-192): switch to java.util.Optional when rest of ODL infra does final Optional<NormalizedNode<?, ?>> node = Optional.fromNullable(modification.readNode(path).orElse(null)); if (LOG.isTraceEnabled() && node.isPresent()) { LOG.trace("ConfigSnapshot.read: {}", node.get()); } return immediateCheckedFuture(node); }
@Override CheckedFuture<Boolean, ReadFailedException> doExists(final YangInstanceIdentifier path) { return Futures.immediateCheckedFuture(modification.readNode(path).isPresent()); }