resumable

0.0.1-1 • Public • Published

Resumable

Define a resumable task queue.

Usage

  var Resumable = require('resumable');
  var mod = require('./foo');
 
  // Use some kind of persistent storage
  // with available 'get/set' methods.
  // A redis client, for example.
  var store = new Redis(...);
 
  var queue = new Resumable({
    key: 'queue-foo',
    mod: mod,
    storage: store,
    ensure: function(list) {
      var seen = {};
      var ret = list.filter(function(arg) {
        if (!arg[0] || !arg[1]) return false;
        if (arg[1].user in seen) return false;
        seen[arg[1].user] = 1;
        return true;
      });
      return ret;
    }
  });
  mod.queue = queue;

In foo.js:

module.exports = {
  method_1: function(arg) {
    module.exports.queue.safely('method_1', arg);
  },
};

The arg object should provide callbacks for success and error:

{
  success: function(){ },
  error: function(){ }
}

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i resumable

      Weekly Downloads

      8

      Version

      0.0.1-1

      License

      BSD

      Last publish

      Collaborators

      • ktmud