diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/jarvis.js | 34 | 
1 files changed, 18 insertions, 16 deletions
diff --git a/examples/jarvis.js b/examples/jarvis.js index 9829c04..9b428e8 100644 --- a/examples/jarvis.js +++ b/examples/jarvis.js @@ -34,24 +34,26 @@ function identity(sender){    var read = new Search(search);    var expire = {}; -  main.on('tileUpdate', (send, source, tiles) => { -    if (send == sender) return; //this may lead to issues later, but for now is used to count its own updates -    let locs = tilekeys(tiles); +  main.on('tileUpdate', tileHandler); +} + +function tileHandler(send, source, tiles){ +  if (send == sender) return; //this may lead to issues later, but for now is used to count its own updates +  let locs = tilekeys(tiles); -    for (let i=0; i<locs.length; i++){ -      let loc = locs[i]; -      if (read.has(loc)){ -        clearTimeout(expire[loc]); -        delete expire[loc]; -        read.del(loc); -      } -      let locspace = new Space(); -      locspace.fromfetch(tiles, [loc, loc], conform=false); -      let results = read.add(loc, locspace); -      if (results.length > 0) respond(results); -      expire[loc] = setTimeout(() => {read.del(loc)}, 30000); +  for (let i=0; i<locs.length; i++){ +    let loc = locs[i]; +    if (read.has(loc)){ +      clearTimeout(expire[loc]); +      delete expire[loc]; +      read.del(loc);      } -  }); +    let locspace = new Space(); +    locspace.fromfetch(tiles, [loc, loc], conform=false); +    let results = read.add(loc, locspace); +    if (results.length > 0) respond(results); +    expire[loc] = setTimeout(() => {read.del(loc)}, 30000); +  }  }  let response = new Space();  | 
