Re: Drill expects pull parsing? Daffodil is event callbacks style

2023-10-12 Thread Mike Beckerle
Yup, I found a Drill class which works similarly to what we need, but for JSON. It is in class JsonLoaderImpl, method: boolean readBatch(); It fills in a batch of rows (for efficiency), and returns true if more data is possible, and false if EOF. The loop is roughly: until data is EOF or no

Re: Drill expects pull parsing? Daffodil is event callbacks style

2023-10-12 Thread Steve Lawrence
It sounds like we want to implement something very similar to what the Daffodil CLI calls "streaming mode". Something along the lines of this (making guesses about what the drill API looks like based on reading this): val input = new InputSourceDataInputStream(inputStream) def hasNext():

Re: Drill expects pull parsing? Daffodil is event callbacks style

2023-10-12 Thread Charles Givre
Mike, I'll add to Paul's comments. While Drill is expecting an iterator style reader, that iterator pattern really only applies to batches. This concept took me a while to wrap my head around, but in any of the batch reader classes, it's important to remember that the next() method is really