Comparing version 0.1.0 to 0.1.1
'use strict'; | ||
var _ = require('lodash'); | ||
var _ = require('lodash'), | ||
async = require('async'); | ||
var internals = {}; | ||
internals.buckets = function (keys) { | ||
var buckets = []; | ||
while( keys.length ) { | ||
buckets.push( keys.splice(0, 10) ); | ||
} | ||
return buckets; | ||
}; | ||
internals.sendBatch = function (sqs, data, callback) { | ||
var messageBuckets = internals.buckets(data); | ||
var id = 1; | ||
var send = function (messages, callback) { | ||
var entries = _.map(messages, function (data) { | ||
return { MessageBody : JSON.stringify(data), Id: 'msg-' + id++ }; | ||
}); | ||
sqs.sendMessageBatch({ | ||
Entries : entries | ||
}, callback); | ||
}; | ||
return async.each(messageBuckets, send, callback); | ||
}; | ||
internals.sender = function(sqs, data, callback) { | ||
if(_.isArray(data)) { | ||
return internals.sendBatch(sqs, data, callback); | ||
} | ||
sqs.sendMessage({ | ||
@@ -9,0 +41,0 @@ MessageBody : JSON.stringify(data) |
{ | ||
"name": "cowork", | ||
"description": "job queue backed by AWS", | ||
"version": "0.1.0", | ||
"version": "0.1.1", | ||
"homepage": "https://github.com/ryanfitz/node-cowork", | ||
@@ -6,0 +6,0 @@ "author": { |
13942
347