public static Optional<NormalizedNode<?, ?>> findNode(final NormalizedNode<?, ?> parent, final PathArgument... relativePath) { return findNode(parent, Arrays.asList(relativePath)); }
@Override public Optional<NormalizedNode<?, ?>> readNode(@Nonnull final PathArgument child) { return NormalizedNodes.findNode(stack.peek(), child); } }
@Override public Optional<NormalizedNode<?, ?>> readNode(@Nonnull final PathArgument child) { return NormalizedNodes.findNode(stack.peek(), child); } }
LeafSetNode<?> getClusterList(final ContainerNode attributes) { final Optional<NormalizedNode<?, ?>> maybeClusterList = NormalizedNodes.findNode(attributes, this.clusterListPath); if (maybeClusterList.isPresent()) { final NormalizedNode<?, ?> clusterList = maybeClusterList.get(); if (clusterList instanceof LeafSetNode) { return (LeafSetNode<?>) clusterList; } LOG.warn("Unexpected CLUSTER_LIST node {}, ignoring it", clusterList); } return null; }
public static Optional<NormalizedNode<?, ?>> findNode(final YangInstanceIdentifier rootPath, final NormalizedNode<?, ?> rootNode, final YangInstanceIdentifier childPath) { final Optional<YangInstanceIdentifier> relativePath = childPath.relativeTo(rootPath); return relativePath.isPresent() ? findNode(rootNode, relativePath.get()) : Optional.empty(); }
@Override void enforceOnData(final NormalizedNode<?, ?> data) { for (final YangInstanceIdentifier id : mandatoryNodes) { checkArgument(NormalizedNodes.findNode(data, id).isPresent(), "Node %s is missing mandatory descendant %s", data.getIdentifier(), id); } } }
private LeafSetNode<?> reusableSegment(final UnkeyedListEntryNode segment) { final Optional<NormalizedNode<?, ?>> maybeAsSequence = NormalizedNodes.findNode(segment, this.asPathSequence); if (maybeAsSequence.isPresent()) { final LeafSetNode<?> asList = (LeafSetNode<?>) maybeAsSequence.get(); if (asList.getValue().size() < Values.UNSIGNED_BYTE_MAX_VALUE) { return asList; } } return null; }
@Override public Optional<NormalizedNode<?, ?>> apply(final DOMRpcResult result) { checkReadSuccess(result, path); final DataContainerChild<? extends YangInstanceIdentifier.PathArgument, ?> dataNode = findDataNode(result); return NormalizedNodes.findNode(dataNode, path.getPathArguments()); } });
@Override public Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier path) { return NormalizedNodes.findNode(rootNode.getData(), path); }
public static Optional<NormalizedNode<?, ?>> findNode(final NormalizedNode<?, ?> tree, final YangInstanceIdentifier path) { requireNonNull(tree, "Tree must not be null"); requireNonNull(path, "Path must not be null"); return findNode(Optional.of(tree), path.getPathArguments()); }
@Override public Optional<NormalizedNode<?, ?>> apply(final DOMRpcResult result) { checkReadSuccess(result, path); final DataContainerChild<? extends YangInstanceIdentifier.PathArgument, ?> dataNode = findDataNode(result); return NormalizedNodes.findNode(dataNode, path.getPathArguments()); } });
void enforceOnData(final NormalizedNode<?, ?> data) { for (final YangInstanceIdentifier id : mandatoryNodes) { checkArgument(NormalizedNodes.findNode(data, id).isPresent(), "Node %s is missing mandatory descendant %s", data.getIdentifier(), id); } }
public static Optional<NormalizedNode<?, ?>> findNode(final NormalizedNode<?, ?> parent, final SchemaPath relativePath) { checkArgument(!relativePath.isAbsolute(), "%s is not a relative path", relativePath); return findNode(Optional.ofNullable(parent), Iterables.transform(relativePath.getPathFromRoot(), NodeIdentifier::new)); }
public static Optional<NormalizedNode<?, ?>> findNode(final NormalizedNode<?, ?> parent, final SchemaPath relativePath) { checkArgument(!relativePath.isAbsolute(), "%s is not a relative path", relativePath); return findNode(Optional.ofNullable(parent), Iterables.transform(relativePath.getPathFromRoot(), NodeIdentifier::new)); }
@Override public DataTreeSnapshotCursor createCursor(@Nonnull final YangInstanceIdentifier path) { final Optional<NormalizedNode<?, ?>> maybeRoot = NormalizedNodes.findNode(rootNode.getData(), path); if (!maybeRoot.isPresent()) { return null; } final NormalizedNode<?, ?> root = maybeRoot.get(); checkArgument(root instanceof NormalizedNodeContainer, "Child %s is not a container", path); return openCursor(new InMemoryDataTreeSnapshotCursor(this, path, (NormalizedNodeContainer<?, ?, ?>)root)); }
public static RouteDistinguisher extractRouteDistinguisher(final DataContainerNode<?> route, final NodeIdentifier rdNid) { final NormalizedNode<?, ?> rdNode = NormalizedNodes.findNode(route, rdNid).orNull(); if (rdNode != null) { return parseRouteDistinguisher(rdNode.getValue()); } return null; } }
@Override public DataTreeSnapshotCursor createCursor(@Nonnull final YangInstanceIdentifier path) { final Optional<NormalizedNode<?, ?>> maybeRoot = NormalizedNodes.findNode(rootNode.getData(), path); if (!maybeRoot.isPresent()) { return null; } final NormalizedNode<?, ?> root = maybeRoot.get(); checkArgument(root instanceof NormalizedNodeContainer, "Child %s is not a container", path); return openCursor(new InMemoryDataTreeSnapshotCursor(this, path, (NormalizedNodeContainer<?, ?, ?>)root)); }
private Attributes routeAttributes(final MapEntryNode route) { if (LOG.isDebugEnabled()) { LOG.debug("AdjRibOut parsing route {}", NormalizedNodes.toStringTree(route)); } final ContainerNode advertisedAttrs = (ContainerNode) NormalizedNodes.findNode(route, this.support.routeAttributesIdentifier()).orNull(); return this.codecs.deserializeAttributes(advertisedAttrs); }
private List<Ipv6Prefixes> extractPrefixes(final Collection<MapEntryNode> routes) { final List<Ipv6Prefixes> prefs = new ArrayList<>(routes.size()); for (final MapEntryNode route : routes) { final String prefix = (String) NormalizedNodes.findNode(route, routePrefixIdentifier()).get().getValue(); prefs.add(new Ipv6PrefixesBuilder().setPathId(PathIdUtil.buildPathId(route, routePathIdNid())).setPrefix(new Ipv6Prefix(prefix)).build()); } return prefs; } }
private List<Ipv4Prefixes> extractPrefixes(final Collection<MapEntryNode> routes) { final List<Ipv4Prefixes> prefs = new ArrayList<>(routes.size()); for (final MapEntryNode route : routes) { final String prefix = (String) NormalizedNodes.findNode(route, routePrefixIdentifier()).get().getValue(); final Ipv4PrefixesBuilder prefixBuilder = new Ipv4PrefixesBuilder().setPrefix(new Ipv4Prefix(prefix)); prefixBuilder.setPathId(PathIdUtil.buildPathId(route, routePathIdNid())); prefs.add(prefixBuilder.build()); } return prefs; }