lib/pubsub.js
function debounceUpdate(combo) {
      bouncedUpdates[combo.uri] = combo;
      if (Object.keys(bouncedUpdates).length < bounceHold) {
        clearTimeout(bounceTimeout);
        bounceTimeout = setTimeout(function() {
          var toDebounce = Object.keys(bouncedUpdates).map(function(b) { return bouncedUpdates[b]; });
          bouncedUpdates = {};
          fayeClient.publish('/item/updated', toDebounce);
        }, bounceDelay);
      }
  }
function debounceUpdate(combo) {
      bouncedUpdates[combo.uri] = combo;
      if (Object.keys(bouncedUpdates).length < bounceHold) {
        clearTimeout(bounceTimeout);
        bounceTimeout = setTimeout(function() {
          var toDebounce = Object.keys(bouncedUpdates).map(function(b) { return bouncedUpdates[b]; });
          bouncedUpdates = {};
          fayeClient.publish('/item/updated', toDebounce);
        }, bounceDelay);
      }
  }
function debounceUpdate ( combo ) { bouncedUpdates [ combo . uri ] = combo ; if ( Object . keys ( bouncedUpdates ) . length < bounceHold ) { clearTimeout ( bounceTimeout ) ; bounceTimeout = setTimeout ( function ( ) { var toDebounce = Object . keys ( bouncedUpdates ) . map ( function ( b ) { return bouncedUpdates [ b ] ; } ) ; bouncedUpdates = { } ; fayeClient . publish ( '/item/updated' , toDebounce ) ; } , bounceDelay ) ; } }
batch updates per a size or time frame. note bounceHold may be exceeded due to the delay.
batch updates per a size or time frame . note bounceHold may be exceeded due to the delay .