Rewrite Promise.defer in new style, resolves swagger-api/swagger-codegen#2251

This commit is contained in:
Ben Herila 2016-03-27 19:10:18 -07:00
parent 8f258b9a48
commit d694118685

View File

@ -216,8 +216,6 @@ export class {{classname}} {
{{/isFile}}
{{/formParams}}
let localVarDeferred = promise.defer<{ response: http.ClientResponse; {{#returnType}}body: {{{returnType}}}; {{/returnType}}{{^returnType}}body?: any; {{/returnType}} }>();
let requestOptions: request.Options = {
method: '{{httpMethod}}',
qs: queryParameters,
@ -242,20 +240,21 @@ export class {{classname}} {
requestOptions.form = formParams;
}
}
request(requestOptions, (error, response, body) => {
if (error) {
localVarDeferred.reject(error);
} else {
if (response.statusCode >= 200 && response.statusCode <= 299) {
localVarDeferred.resolve({ response: response, body: body });
return new Promise<{ response: http.ClientResponse; {{#returnType}}body: {{{returnType}}}; {{/returnType}}{{^returnType}}body?: any; {{/returnType}} }>((resolve, reject) => {
request(requestOptions, (error, response, body) => {
if (error) {
reject(error);
} else {
localVarDeferred.reject({ response: response, body: body });
if (response.statusCode >= 200 && response.statusCode <= 299) {
resolve({ response: response, body: body });
} else {
reject({ response: response, body: body });
}
}
}
});
});
return localVarDeferred.promise;
}
{{/operation}}
}