(error = false, data)
| 396 | } |
| 397 | |
| 398 | function done(error = false, data) { |
| 399 | if (6 === this.state) return; |
| 400 | |
| 401 | this.state = 6; |
| 402 | delete this.done; |
| 403 | |
| 404 | if (this.response && !error) { |
| 405 | if (String === this.response) |
| 406 | data = this.buffers.join(""); |
| 407 | else if (ArrayBuffer === this.response) { |
| 408 | if (0 === this.buffers.length) |
| 409 | data = new ArrayBuffer(); |
| 410 | else if (1 === this.buffers.length) |
| 411 | data = this.buffers[0]; |
| 412 | else { |
| 413 | data = this.buffers.shift(); |
| 414 | data = data.concat.apply(data, this.buffers); |
| 415 | } |
| 416 | } |
| 417 | delete this.buffers; |
| 418 | delete this.response; |
| 419 | } |
| 420 | |
| 421 | try { |
| 422 | if (this.server) { |
| 423 | if (error) |
| 424 | this.callback(Server.error, data); |
| 425 | } |
| 426 | else |
| 427 | this.callback(error ? Request.error : Request.responseComplete, data); |
| 428 | } |
| 429 | finally { |
| 430 | this.close(); |
| 431 | } |
| 432 | } |
| 433 | |
| 434 | /* |
| 435 | Server |
no test coverage detected