123456789101112131415161718192021222324252627282930313233 |
- 'use strict';
- var inherits = require('inherits')
- , EventEmitter = require('events').EventEmitter
- , JSON3 = require('json3')
- , XHRLocalObject = require('./transport/sender/xhr-local')
- , InfoAjax = require('./info-ajax')
- ;
- function InfoReceiverIframe(transUrl) {
- var self = this;
- EventEmitter.call(this);
- this.ir = new InfoAjax(transUrl, XHRLocalObject);
- this.ir.once('finish', function(info, rtt) {
- self.ir = null;
- self.emit('message', JSON3.stringify([info, rtt]));
- });
- }
- inherits(InfoReceiverIframe, EventEmitter);
- InfoReceiverIframe.transportName = 'iframe-info-receiver';
- InfoReceiverIframe.prototype.close = function() {
- if (this.ir) {
- this.ir.close();
- this.ir = null;
- }
- this.removeAllListeners();
- };
- module.exports = InfoReceiverIframe;
|