Class TreeTraverser<M extends java.util.Map<java.lang.String,​java.lang.Object>,​L extends java.util.List<java.lang.Object>>

  • Type Parameters:
    M - the map type that extends Map<String, Object>
    L - the list type that extends List<Object>
    Direct Known Subclasses:
    JSONTraverser

    public class TreeTraverser<M extends java.util.Map<java.lang.String,​java.lang.Object>,​L extends java.util.List<java.lang.Object>>
    extends java.lang.Object
    Traverses every node of a tree made up of a combination of Maps and Lists

    TreeTraverser accepts an action and provides callback hooks for it to act on the traversed nodes at each significant step. See TreeTraverseAction.

    See package-info for more details

    • Field Detail

      • action

        protected TreeTraverseAction<M extends java.util.Map<java.lang.String,​java.lang.Object>,​L extends java.util.List<java.lang.Object>> action
      • pathPrefix

        protected java.lang.String pathPrefix
    • Method Detail

      • with

        public TreeTraverser<M,​L> with​(java.lang.String pathPrefix)
      • traverse

        public void traverse​(M map)
      • depthFirst

        private void depthFirst​(java.lang.String fullPath,
                                M map)
      • depthFirst

        private void depthFirst​(java.lang.String fullPath,
                                L list)
      • buildPath

        private java.lang.String buildPath​(java.lang.String fullPath,
                                           java.lang.String entryKey)