examples/node/search.js
function(job, done) {
                    Async.whilst(
                        function() { return !job.properties().isDone; },
                        function(iterationDone) {
                            job.fetch(function(err, job) {
                                if (err) {
                                    callback(err);
                                }
                                else {
                                    // If the user asked for verbose output,
                                    // then write out the status of the search
                                    var properties = job.properties();
                                    if (isVerbose) {
                                        var progress    = (properties.doneProgress * 100.0) + "%";
                                        var scanned     = properties.scanCount;
                                        var matched     = properties.eventCount;
                                        var results     = properties.resultCount;
                                        var stats = "-- " +
                                            progress + " done | " +
                                            scanned  + " scanned | " +
                                            matched  + " matched | " +
                                            results  + " results";
                                        print("\r" + stats + "                                          ");
                                    }
                                    
                                    Async.sleep(1000, iterationDone);
                                }
                            });
                        },
                        function(err) {
                            if (isVerbose) {
                                print("\r");
                            }
                            done(err, job);
                        }
                    );
                }
function(job, done) {
                    Async.whilst(
                        function() { return !job.properties().isDone; },
                        function(iterationDone) {
                            job.fetch(function(err, job) {
                                if (err) {
                                    callback(err);
                                }
                                else {
                                    // If the user asked for verbose output,
                                    // then write out the status of the search
                                    var properties = job.properties();
                                    if (isVerbose) {
                                        var progress    = (properties.doneProgress * 100.0) + "%";
                                        var scanned     = properties.scanCount;
                                        var matched     = properties.eventCount;
                                        var results     = properties.resultCount;
                                        var stats = "-- " +
                                            progress + " done | " +
                                            scanned  + " scanned | " +
                                            matched  + " matched | " +
                                            results  + " results";
                                        print("\r" + stats + "                                          ");
                                    }
                                    
                                    Async.sleep(1000, iterationDone);
                                }
                            });
                        },
                        function(err) {
                            if (isVerbose) {
                                print("\r");
                            }
                            done(err, job);
                        }
                    );
                }
function ( job , done ) { Async . whilst ( function ( ) { return ! job . properties ( ) . isDone ; } , function ( iterationDone ) { job . fetch ( function ( err , job ) { if ( err ) { callback ( err ) ; } else { // If the user asked for verbose output, // then write out the status of the search var properties = job . properties ( ) ; if ( isVerbose ) { var progress = ( properties . doneProgress * 100.0 ) + "%" ; var scanned = properties . scanCount ; var matched = properties . eventCount ; var results = properties . resultCount ; var stats = "-- " + progress + " done | " + scanned + " scanned | " + matched + " matched | " + results + " results" ; print ( "\r" + stats + "                                          " ) ; } Async . sleep ( 1000 , iterationDone ) ; } } ) ; } , function ( err ) { if ( isVerbose ) { print ( "\r" ) ; } done ( err , job ) ; } ) ; }
Poll until the search is complete
Poll until the search is complete