Advertisement
Guest User

Untitled

a guest
Feb 20th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 0.71 KB | None | 0 0
  1. public static final RRNode getParent(RRNode node) {
  2.     Field field = node.getClass().getDeclaredField("parent");
  3.     field.setAccessible(true);
  4.     return field.get(node);
  5. }
  6.  
  7. /**
  8.  * Yields a list of all nodes starting from a given node back to its tree's root node.
  9.  * This assumes that the tree's root node does not have a parent (parent == null).
  10.  */
  11. public static final java.util.List<RRNode> getBacktrace(RRNode node) {
  12.     java.util.List<RRNode> nodes = new java.util.LinkedList<RRNode>(java.util.Arrays.asList(node));
  13.     RRNode current = node;
  14.     RRNode parent = null;
  15.     while ((parent = getParent(current)) != null) {
  16.         nodes.add(parent);
  17.         current = parent;
  18.     }
  19.  
  20.     return nodes;
  21. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement