Class ITER_JSONSurfer

  • All Implemented Interfaces:
    IteratorFunction

    public class ITER_JSONSurfer
    extends IteratorStreamFunctionBase
    Iterator function iter:JSONSurfer extracts a list of sub-JSON documents of a JSON document, according to a forward-only JSONPath expression. See https://github.com/jsurfer/JsonSurfer for the JSONPath syntax specification.

    See Live example

    The list of parameters is interpreted as follows:

    • Param 1: (json): the URI of the JSON document (a URI), or the JSON document itself (a String)
    • Param 2: the JSONPath query
    • Param 3: (integer: batch) Optional number of rows per batch (by default, all the JSON document is processed as one batch);
    • Param 4 .. N : (auxJsonPath ... ) other JSONPath queries, which will be executed over the results of the execution of jsonPath, and provide one result each.
    Author:
    Maxime Lefrançois, Omar Qawasmeh
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String URI  
    • Constructor Summary

      Constructors 
      Constructor Description
      ITER_JSONSurfer()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void checkBuild​(ExprList args)
      Partially checks if the iterator function can be executed with the given arguments.
      void exec​(java.util.List<NodeValue> args, java.util.function.Consumer<java.util.List<java.util.List<NodeValue>>> collectionListNodeValue)
      IteratorFunction call to a list of evaluated argument values.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ITER_JSONSurfer

        public ITER_JSONSurfer()