| 1234567891011121314151617181920212223242526272829303132333435363738394041 | 'use strict';var inherits = require('inherits')  , AjaxBasedTransport = require('./lib/ajax-based')  , XhrReceiver = require('./receiver/xhr')  , XHRCorsObject = require('./sender/xhr-cors')  , XHRLocalObject = require('./sender/xhr-local')  , browser = require('../utils/browser')  ;function XhrStreamingTransport(transUrl) {  if (!XHRLocalObject.enabled && !XHRCorsObject.enabled) {    throw new Error('Transport created when disabled');  }  AjaxBasedTransport.call(this, transUrl, '/xhr_streaming', XhrReceiver, XHRCorsObject);}inherits(XhrStreamingTransport, AjaxBasedTransport);XhrStreamingTransport.enabled = function(info) {  if (info.nullOrigin) {    return false;  }  // Opera doesn't support xhr-streaming #60  // But it might be able to #92  if (browser.isOpera()) {    return false;  }  return XHRCorsObject.enabled;};XhrStreamingTransport.transportName = 'xhr-streaming';XhrStreamingTransport.roundTrips = 2; // preflight, ajax// Safari gets confused when a streaming ajax request is started// before onload. This causes the load indicator to spin indefinetely.// Only require body when used in a browserXhrStreamingTransport.needBody = !!global.document;module.exports = XhrStreamingTransport;
 |