Populate data/ hierarchy
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / leafref / LeafRefContextUtils.java
diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefContextUtils.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefContextUtils.java
deleted file mode 100644 (file)
index 43615f5..0000000
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.yangtools.yang.data.impl.leafref;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.SchemaNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-
-public final class LeafRefContextUtils {
-    private LeafRefContextUtils() {
-        // Hidden on purpose
-    }
-
-    public static LeafRefContext getLeafRefReferencingContext(final SchemaNode node, final LeafRefContext root) {
-        final SchemaPath schemaPath = node.getPath();
-        return getLeafRefReferencingContext(schemaPath, root);
-    }
-
-    public static LeafRefContext getLeafRefReferencingContext(
-            final SchemaPath schemaPath, final LeafRefContext root) {
-        final Iterable<QName> pathFromRoot = schemaPath.getPathFromRoot();
-        return getLeafRefReferencingContext(pathFromRoot, root);
-    }
-
-    public static LeafRefContext getLeafRefReferencingContext(final Iterable<QName> pathFromRoot, LeafRefContext root) {
-        LeafRefContext leafRefCtx = null;
-        final Iterator<QName> iterator = pathFromRoot.iterator();
-        while (iterator.hasNext() && root != null) {
-            final QName qname = iterator.next();
-            leafRefCtx = root.getReferencingChildByName(qname);
-            if (iterator.hasNext()) {
-                root = leafRefCtx;
-            }
-        }
-
-        return leafRefCtx;
-    }
-
-    public static LeafRefContext getLeafRefReferencedByContext(final SchemaNode node, final LeafRefContext root) {
-        final SchemaPath schemaPath = node.getPath();
-        return getLeafRefReferencedByContext(schemaPath, root);
-    }
-
-    public static LeafRefContext getLeafRefReferencedByContext(
-            final SchemaPath schemaPath, final LeafRefContext root) {
-        final Iterable<QName> pathFromRoot = schemaPath.getPathFromRoot();
-        return getLeafRefReferencedByContext(pathFromRoot, root);
-    }
-
-    public static LeafRefContext getLeafRefReferencedByContext(final Iterable<QName> pathFromRoot,
-            LeafRefContext root) {
-
-        LeafRefContext leafRefCtx = null;
-        final Iterator<QName> iterator = pathFromRoot.iterator();
-        while (iterator.hasNext() && root != null) {
-            final QName qname = iterator.next();
-            leafRefCtx = root.getReferencedChildByName(qname);
-            if (iterator.hasNext()) {
-                root = leafRefCtx;
-            }
-        }
-
-        return leafRefCtx;
-    }
-
-    public static boolean isLeafRef(final SchemaNode node, final LeafRefContext root) {
-        if (node == null || root == null) {
-            return false;
-        }
-
-        final LeafRefContext leafRefReferencingContext = getLeafRefReferencingContext(node, root);
-        if (leafRefReferencingContext == null) {
-            return false;
-        }
-
-        return leafRefReferencingContext.isReferencing();
-    }
-
-    public static boolean hasLeafRefChild(final SchemaNode node, final LeafRefContext root) {
-        if (node == null || root == null) {
-            return false;
-        }
-
-        final LeafRefContext leafRefReferencingContext = getLeafRefReferencingContext(node, root);
-        if (leafRefReferencingContext == null) {
-            return false;
-        }
-
-        return leafRefReferencingContext.hasReferencingChild();
-    }
-
-    public static boolean isReferencedByLeafRef(final SchemaNode node, final LeafRefContext root) {
-        if (node == null || root == null) {
-            return false;
-        }
-
-        final LeafRefContext leafRefReferencedByContext = getLeafRefReferencedByContext(node, root);
-        if (leafRefReferencedByContext == null) {
-            return false;
-        }
-
-        return leafRefReferencedByContext.isReferenced();
-    }
-
-    public static boolean hasChildReferencedByLeafRef(final SchemaNode node, final LeafRefContext root) {
-        if (node == null || root == null) {
-            return false;
-        }
-
-        final LeafRefContext leafRefReferencedByContext = getLeafRefReferencedByContext(node, root);
-        if (leafRefReferencedByContext == null) {
-            return false;
-        }
-
-        return leafRefReferencedByContext.hasReferencedChild();
-    }
-
-    public static List<LeafRefContext> findAllLeafRefChilds(final SchemaNode node, final LeafRefContext root) {
-        return findAllLeafRefChilds(node.getPath(), root);
-    }
-
-    public static List<LeafRefContext> findAllLeafRefChilds(final SchemaPath schemaPath, final LeafRefContext root) {
-        return findAllLeafRefChilds(schemaPath.getPathFromRoot(), root);
-    }
-
-    public static List<LeafRefContext> findAllLeafRefChilds(final Iterable<QName> pathFromRoot,
-            final LeafRefContext root) {
-        final LeafRefContext leafRefReferencingContext = getLeafRefReferencingContext(pathFromRoot, root);
-        final List<LeafRefContext> allLeafRefsChilds = findAllLeafRefChilds(leafRefReferencingContext);
-
-        return allLeafRefsChilds;
-    }
-
-    public static List<LeafRefContext> findAllLeafRefChilds(final LeafRefContext parent) {
-        final LinkedList<LeafRefContext> leafRefChilds = new LinkedList<>();
-        if (parent == null) {
-            return leafRefChilds;
-        }
-
-        if (parent.isReferencing()) {
-            leafRefChilds.add(parent);
-            return leafRefChilds;
-        }
-
-        final Set<Entry<QName, LeafRefContext>> childs = parent.getReferencingChilds().entrySet();
-        for (final Entry<QName, LeafRefContext> child : childs) {
-            leafRefChilds.addAll(findAllLeafRefChilds(child.getValue()));
-        }
-        return leafRefChilds;
-    }
-
-    public static List<LeafRefContext> findAllChildsReferencedByLeafRef(final SchemaNode node,
-            final LeafRefContext root) {
-        return findAllChildsReferencedByLeafRef(node.getPath(), root);
-    }
-
-    public static List<LeafRefContext> findAllChildsReferencedByLeafRef(final SchemaPath schemaPath,
-            final LeafRefContext root) {
-        return findAllChildsReferencedByLeafRef(schemaPath.getPathFromRoot(), root);
-    }
-
-    public static List<LeafRefContext> findAllChildsReferencedByLeafRef(final Iterable<QName> pathFromRoot,
-            final LeafRefContext root) {
-
-        final LeafRefContext leafRefReferencedByContext = getLeafRefReferencedByContext(pathFromRoot, root);
-        final List<LeafRefContext> allChildsReferencedByLeafRef =
-                findAllChildsReferencedByLeafRef(leafRefReferencedByContext);
-
-        return allChildsReferencedByLeafRef;
-    }
-
-    public static List<LeafRefContext> findAllChildsReferencedByLeafRef(final LeafRefContext parent) {
-        final LinkedList<LeafRefContext> childsReferencedByLeafRef = new LinkedList<>();
-        if (parent == null) {
-            return childsReferencedByLeafRef;
-        }
-
-        if (parent.isReferenced()) {
-            childsReferencedByLeafRef.add(parent);
-            return childsReferencedByLeafRef;
-        }
-
-        final Set<Entry<QName, LeafRefContext>> childs = parent.getReferencedByChilds().entrySet();
-        for (final Entry<QName, LeafRefContext> child : childs) {
-            childsReferencedByLeafRef.addAll(findAllChildsReferencedByLeafRef(child.getValue()));
-        }
-        return childsReferencedByLeafRef;
-    }
-
-    public static Map<QName, LeafRefContext> getAllLeafRefsReferencingThisNode(
-            final SchemaNode node, final LeafRefContext root) {
-        return getAllLeafRefsReferencingThisNode(node.getPath(), root);
-    }
-
-    public static Map<QName, LeafRefContext> getAllLeafRefsReferencingThisNode(final SchemaPath path,
-            final LeafRefContext root) {
-        return getAllLeafRefsReferencingThisNode(path.getPathFromRoot(), root);
-    }
-
-    public static Map<QName, LeafRefContext> getAllLeafRefsReferencingThisNode(final Iterable<QName> pathFromRoot,
-            final LeafRefContext root) {
-
-        final LeafRefContext leafRefReferencedByContext = getLeafRefReferencedByContext(pathFromRoot, root);
-        if (leafRefReferencedByContext == null) {
-            return new HashMap<>();
-        }
-
-        return leafRefReferencedByContext.getAllReferencedByLeafRefCtxs();
-    }
-}