Class LazyLeafOperations
- java.lang.Object
-
- org.opendaylight.yangtools.yang.data.impl.schema.nodes.LazyLeafOperations
-
@Beta public final class LazyLeafOperations extends Object
Support utilities for dealing with Maps which would normally holdDataContainerChildvalues, but are modified to eliminateLeafNodeinstances.This class holds implementation logic which controls lifecycle of
LeafNodes by providing a central policy point for how the implementation treats these nodes. There are two modes of operation:- eager, which means leaf nodes are retained by their parent
- lazy, which means leaf nodes are created whenever they are queried and no attempt is made to retain them
Selection of the mode in effect is available through "org.opendaylight.yangtools.yang.data.impl.schema.nodes.lazy-leaves" system property.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Optional<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?>>findChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument key)static @Nullable org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?>getChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument key)static @NonNull Collection<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?>>getValue(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map)static booleanisEnabled()A boolean flag indicating whether leaf nodes are being treated as expendable.static voidputChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?> child)
-
-
-
Method Detail
-
isEnabled
public static boolean isEnabled()
A boolean flag indicating whether leaf nodes are being treated as expendable.- Returns:
- True if NormalizedNode implementations in this artifact are treating leaf nodes as transient, i.e. do not retain them.
-
findChild
public static Optional<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?>> findChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument key)
-
getChild
public static @Nullable org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?> getChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument key)
-
putChild
public static void putChild(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map, org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?> child)
-
getValue
public static @NonNull Collection<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild<?,?>> getValue(Map<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument,Object> map)
-
-