universal-s3
Version:
Universal S3 SDK for JavaScript, available for Node.js backends
25 lines (20 loc) • 587 B
JavaScript
var memoizedProperty = require('../util').memoizedProperty;
function memoize(name, value, factory, nameTr) {
memoizedProperty(this, nameTr(name), function() {
return factory(name, value);
});
}
function Collection(iterable, options, factory, nameTr, callback) {
nameTr = nameTr || String;
var self = this;
for (var id in iterable) {
if (Object.prototype.hasOwnProperty.call(iterable, id)) {
memoize.call(self, id, iterable[id], factory, nameTr);
if (callback) callback(id, iterable[id]);
}
}
}
/**
* @api private
*/
module.exports = Collection;