| 'use strict'; | 
|   | 
| // The simplest and most robust transport, using the well-know cross | 
| // domain hack - JSONP. This transport is quite inefficient - one | 
| // message could use up to one http request. But at least it works almost | 
| // everywhere. | 
| // Known limitations: | 
| //   o you will get a spinning cursor | 
| //   o for Konqueror a dumb timer is needed to detect errors | 
|   | 
| var inherits = require('inherits') | 
|   , SenderReceiver = require('./lib/sender-receiver') | 
|   , JsonpReceiver = require('./receiver/jsonp') | 
|   , jsonpSender = require('./sender/jsonp') | 
|   ; | 
|   | 
| function JsonPTransport(transUrl) { | 
|   if (!JsonPTransport.enabled()) { | 
|     throw new Error('Transport created when disabled'); | 
|   } | 
|   SenderReceiver.call(this, transUrl, '/jsonp', jsonpSender, JsonpReceiver); | 
| } | 
|   | 
| inherits(JsonPTransport, SenderReceiver); | 
|   | 
| JsonPTransport.enabled = function() { | 
|   return !!global.document; | 
| }; | 
|   | 
| JsonPTransport.transportName = 'jsonp-polling'; | 
| JsonPTransport.roundTrips = 1; | 
| JsonPTransport.needBody = true; | 
|   | 
| module.exports = JsonPTransport; |