UNPKG

1.43 kBJavaScriptView Raw
1// Generated by CoffeeScript 2.2.1
2var Request, Response, _, request, url;
3
4request = require('request');
5
6url = require('url');
7
8_ = require('underscore');
9
10Response = require('./response');
11
12Request = (function() {
13 class Request {
14 constructor(module1, _request) {
15 this.module = module1;
16 this._request = _request;
17 if (!this.module) {
18 throw new Error('Requires Zoho Module');
19 }
20 if (!this._request) {
21 throw new Error('Requires request');
22 }
23 return;
24 }
25
26 request(cb) {
27 var chunks, options;
28 options = _.pick(this._request, ['method']);
29 options.uri = url.format(this._request);
30 chunks = new Buffer('');
31 return request(options, (error, response, body) => {
32 if (error) {
33 return cb(error, null);
34 } else {
35 if (/text\/xml/.test(response.headers['content-type'])) {
36 this.response = new Response(response);
37 return this.response.parseBody(body, cb);
38 } else {
39 this.response = new Response(response);
40 return this.response.parseFile(chunks, cb);
41 }
42 }
43 }).on('response', function(resp) {
44 return resp.on('data', function(chunk) {
45 return chunks = Buffer.concat([chunks, chunk]);
46 });
47 });
48 }
49
50 };
51
52 Request.prototype.response = null;
53
54 return Request;
55
56}).call(this);
57
58module.exports = Request;