first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-09-30 18:11:26 -04:00
commit e592ca6823
27270 changed files with 5002257 additions and 0 deletions
@@ -0,0 +1,109 @@
YUI.add('parallel', function (Y, NAME) {
/**
* A concurrent parallel processor to help in running several async functions.
* @module parallel
* @main parallel
*/
/**
A concurrent parallel processor to help in running several async functions.
var stack = new Y.Parallel();
for (var i = 0; i < 15; i++) {
Y.io('./api/json/' + i, {
on: {
success: stack.add(function() {
Y.log('Done!');
})
}
});
}
stack.done(function() {
Y.log('All IO requests complete!');
});
@class Parallel
@param {Object} o A config object
@param {Object} [o.context=Y] The execution context of the callback to done
*/
Y.Parallel = function(o) {
this.config = o || {};
this.results = [];
this.context = this.config.context || Y;
this.total = 0;
this.finished = 0;
};
Y.Parallel.prototype = {
/**
* An Array of results from all the callbacks in the stack
* @property results
* @type Array
*/
results: null,
/**
* The total items in the stack
* @property total
* @type Number
*/
total: null,
/**
* The number of stacked callbacks executed
* @property finished
* @type Number
*/
finished: null,
/**
* Add a callback to the stack
* @method add
* @param {Function} fn The function callback we are waiting for
*/
add: function (fn) {
var self = this,
index = self.total;
self.total += 1;
return function () {
self.finished++;
self.results[index] = (fn && fn.apply(self.context, arguments)) ||
(arguments.length === 1 ? arguments[0] : Y.Array(arguments));
self.test();
};
},
/**
* Test to see if all registered items in the stack have completed, if so call the callback to `done`
* @method test
*/
test: function () {
var self = this;
if (self.finished >= self.total && self.callback) {
self.callback.call(self.context, self.results, self.data);
}
},
/**
* The method to call when all the items in the stack are complete.
* @method done
* @param {Function} callback The callback to execute on complete
* @param {Mixed} callback.results The results of all the callbacks in the stack
* @param {Mixed} [callback.data] The data given to the `done` method
* @param {Mixed} data Mixed data to pass to the success callback
*/
done: function (callback, data) {
this.callback = callback;
this.data = data;
this.test();
}
};
}, '3.18.1', {"requires": ["yui-base"]});
+1
View File
@@ -0,0 +1 @@
YUI.add("parallel",function(e,t){e.Parallel=function(t){this.config=t||{},this.results=[],this.context=this.config.context||e,this.total=0,this.finished=0},e.Parallel.prototype={results:null,total:null,finished:null,add:function(t){var n=this,r=n.total;return n.total+=1,function(){n.finished++,n.results[r]=t&&t.apply(n.context,arguments)||(arguments.length===1?arguments[0]:e.Array(arguments)),n.test()}},test:function(){var e=this;e.finished>=e.total&&e.callback&&e.callback.call(e.context,e.results,e.data)},done:function(e,t){this.callback=e,this.data=t,this.test()}}},"3.18.1",{requires:["yui-base"]});
+107
View File
@@ -0,0 +1,107 @@
YUI.add('parallel', function (Y, NAME) {
/**
* A concurrent parallel processor to help in running several async functions.
* @module parallel
* @main parallel
*/
/**
A concurrent parallel processor to help in running several async functions.
var stack = new Y.Parallel();
for (var i = 0; i < 15; i++) {
Y.io('./api/json/' + i, {
on: {
success: stack.add(function() {
})
}
});
}
stack.done(function() {
});
@class Parallel
@param {Object} o A config object
@param {Object} [o.context=Y] The execution context of the callback to done
*/
Y.Parallel = function(o) {
this.config = o || {};
this.results = [];
this.context = this.config.context || Y;
this.total = 0;
this.finished = 0;
};
Y.Parallel.prototype = {
/**
* An Array of results from all the callbacks in the stack
* @property results
* @type Array
*/
results: null,
/**
* The total items in the stack
* @property total
* @type Number
*/
total: null,
/**
* The number of stacked callbacks executed
* @property finished
* @type Number
*/
finished: null,
/**
* Add a callback to the stack
* @method add
* @param {Function} fn The function callback we are waiting for
*/
add: function (fn) {
var self = this,
index = self.total;
self.total += 1;
return function () {
self.finished++;
self.results[index] = (fn && fn.apply(self.context, arguments)) ||
(arguments.length === 1 ? arguments[0] : Y.Array(arguments));
self.test();
};
},
/**
* Test to see if all registered items in the stack have completed, if so call the callback to `done`
* @method test
*/
test: function () {
var self = this;
if (self.finished >= self.total && self.callback) {
self.callback.call(self.context, self.results, self.data);
}
},
/**
* The method to call when all the items in the stack are complete.
* @method done
* @param {Function} callback The callback to execute on complete
* @param {Mixed} callback.results The results of all the callbacks in the stack
* @param {Mixed} [callback.data] The data given to the `done` method
* @param {Mixed} data Mixed data to pass to the success callback
*/
done: function (callback, data) {
this.callback = callback;
this.data = data;
this.test();
}
};
}, '3.18.1', {"requires": ["yui-base"]});