List of usage examples for org.springframework.statemachine.support.tree TreeTraverser postOrderTraversal
public final Iterable<T> postOrderTraversal(final T root)
From source file:org.springframework.statemachine.recipes.tasks.TasksHandler.java
private static Iterator<Node<TaskWrapper>> buildTasksIterator(List<TaskWrapper> tasks) { Tree<TaskWrapper> tree = new Tree<TaskWrapper>(); for (TaskWrapper wrapper : tasks) { tree.add(wrapper, wrapper.id, wrapper.parent); }/*from w w w . j ava 2s.co m*/ TreeTraverser<Node<TaskWrapper>> traverser = new TreeTraverser<Node<TaskWrapper>>() { @Override public Iterable<Node<TaskWrapper>> children(Node<TaskWrapper> root) { return root.getChildren(); } }; Iterable<Node<TaskWrapper>> postOrderTraversal = traverser.postOrderTraversal(tree.getRoot()); Iterator<Node<TaskWrapper>> iterator = postOrderTraversal.iterator(); return iterator; }