mirror of
https://github.com/apache/cordova-android.git
synced 2026-04-23 00:00:09 +08:00
updated cordova-common dependnecy to 1.1.0
This commit is contained in:
+47
-1
@@ -16,4 +16,50 @@
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
*/
|
||||
module.exports = new (require('events').EventEmitter)();
|
||||
|
||||
var EventEmitter = require('events').EventEmitter;
|
||||
|
||||
var INSTANCE = new EventEmitter();
|
||||
var EVENTS_RECEIVER;
|
||||
|
||||
module.exports = INSTANCE;
|
||||
|
||||
/**
|
||||
* Sets up current instance to forward emitted events to another EventEmitter
|
||||
* instance.
|
||||
*
|
||||
* @param {EventEmitter} [eventEmitter] The emitter instance to forward
|
||||
* events to. Falsy value, when passed, disables forwarding.
|
||||
*/
|
||||
module.exports.forwardEventsTo = function (eventEmitter) {
|
||||
|
||||
// If no argument is specified disable events forwarding
|
||||
if (!eventEmitter) {
|
||||
EVENTS_RECEIVER = undefined;
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(eventEmitter instanceof EventEmitter))
|
||||
throw new Error('Cordova events could be redirected to another EventEmitter instance only');
|
||||
|
||||
EVENTS_RECEIVER = eventEmitter;
|
||||
};
|
||||
|
||||
var emit = INSTANCE.emit;
|
||||
|
||||
/**
|
||||
* This method replaces original 'emit' method to allow events forwarding.
|
||||
*
|
||||
* @return {eventEmitter} Current instance to allow calls chaining, as
|
||||
* original 'emit' does
|
||||
*/
|
||||
module.exports.emit = function () {
|
||||
|
||||
var args = Array.prototype.slice.call(arguments);
|
||||
|
||||
if (EVENTS_RECEIVER) {
|
||||
EVENTS_RECEIVER.emit.apply(EVENTS_RECEIVER, args);
|
||||
}
|
||||
|
||||
return emit.apply(this, args);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user