handlebars.javascript.es6.api.mustache Maven / Gradle / Ivy
{{>licenseInfo}}
import ApiClient from "../ApiClient";
{{#imports}}import {{import}} from '../{{#modelPackage}}{{&modelPackage}}/{{/modelPackage}}{{import}}';
{{/imports}}
{{#emitJSDoc}}/**
* {{baseName}} service.
* @module {{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}{{#apiPackage}}{{&apiPackage}}/{{/apiPackage}}{{classname}}
* @version {{projectVersion}}
*/{{/emitJSDoc}}
export default class {{classname}} {
{{#emitJSDoc}}/**
* Constructs a new {{&classname}}. {{#description}}
* {{description}}{{/description}}
* @alias module:{{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}{{#apiPackage}}{{apiPackage}}/{{/apiPackage}}{{classname}}
* @class
* @param {{braces "left"}}module:{{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}ApiClient{{braces "right"}} [apiClient] Optional API client implementation to use,
* default to {{braces "left"}}@link module:{{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}ApiClient#instanc
e{{braces "right"}} if unspecified.
*/{{/emitJSDoc}}
constructor(apiClient) {
this.apiClient = apiClient || ApiClient.instance;
}
{{#operations}}{{#operation}}{{#emitJSDoc}}{{^usePromises}}
/**
* Callback function to receive the result of the {{operationId}} operation.
* @callback module{{#invokerPackage}}{{invokerPackage}}/{{/invokerPackage}}{{#apiPackage}}{{apiPackage}}/{{/apiPackage}}{{classname}}~{{operationId}}Callback
* @param {{braces "left"}}String{{braces "right"}} error Error message, if any.
* @param {{#vendorExtensions.x-jsdoc-type}}{{braces "left"}}{{&vendorExtensions.x-jsdoc-type}}{{braces "left"}} data The data returned by the service call.{{/vendorExtensions.x-jsdoc-type}}{{^vendorExtensions.x-jsdoc-type}}data This operation does not return a value.{{/vendorExtensions.x-jsdoc-type}}
* @param {{braces "left"}}String{{braces "right"}} response The complete HTTP response.
*/{{/usePromises}}
/**{{#summary}}
* {{summary}}{{/summary}}{{#notes}}
* {{notes}}{{/notes}}{{#allParams}}{{#required}}
* @param {{braces "left"}}{{&vendorExtensions.x-jsdoc-type}}{{braces "right"}} {{paramName}} {{description}}{{/required}}{{/allParams}}{{#hasOptionalParams}}
* @param {{braces "left"}}Object{{braces "right"}} opts Optional parameters{{#allParams}}{{^required}}
* @param {{braces "left"}}{{&vendorExtensions.x-jsdoc-type}}{{braces "right"}} opts.{{paramName}} {{description}}{{#defaultValue}} (default to <.>){{/defaultValue}}{{/required}}{{/allParams}}{{/hasOptionalParams}}{{^usePromises}}
* @param {{braces "left"}}module:{{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}{{#apiPackage}}{{&apiPackage}}/{{/apiPackage}}{{classname}}~{{operationId}}Callback{{braces "right"}} callback The callback function, accepting three arguments: error, data, response{{#returnType}}
* data is of type: {{braces "left"}}@link <&vendorExtensions.x-jsdoc-type>{{braces "right"}}{{/returnType}}{{/usePromises}}{{#usePromises}}
* @return {{braces "left"}}Promise{{braces "right"}} a {{braces "left"}}@link https://www.promisejs.org/|Promise{{braces "right"}}{{#returnType}}, with an object containing data of type {{braces "left"}}@link {{&vendorExtensions.x-jsdoc-type}}{{braces "right"}} and HTTP response{{/returnType}}{{^returnType}}, with an object containing HTTP response{{/returnType}}{{/usePromises}}
*/
{{/emitJSDoc}} {{operationId}}{{#usePromises}}WithHttpInfo{{/usePromises}}({{vendorExtensions.x-codegen-arg-list}}{{^usePromises}}{{#hasParams}}, {{/hasParams}}callback{{/usePromises}}) {
{{#hasOptionalParams}}opts = opts || {};{{/hasOptionalParams}}
let postBody = {{#bodyParam}}{{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}{{/bodyParam}}{{^bodyParam}}null{{/bodyParam}};
{{#allParams}}{{#required}}
// verify the required parameter '{{paramName}}' is set
if ({{paramName}} === undefined || {{paramName}} === null) {
throw new Error("Missing the required parameter '{{paramName}}' when calling {{operationId}}");
}
{{/required}}{{/allParams}}
let pathParams = {
{{#pathParams}}'{{baseName}}': {{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}{{#hasMore}},{{/hasMore}}{{/pathParams}}
};
let queryParams = {
{{#queryParams}}'{{baseName}}': {{#collectionFormat}}this.apiClient.buildCollectionParam({{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}, '{{collectionFormat}}'){{/collectionFormat}}{{^collectionFormat}}{{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}{{/collectionFormat}}{{#hasMore}},{{/hasMore}}{{/queryParams}}
};
let headerParams = {
{{#headerParams}}'{{baseName}}': {{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}{{#hasMore}},{{/hasMore}}{{/headerParams}}
};
let formParams = {
{{#formParams}}'{{baseName}}': {{#collectionFormat}}this.apiClient.buildCollectionParam({{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}, '{{collectionFormat}}'){{/collectionFormat}}{{^collectionFormat}}{{#required}}{{paramName}}{{/required}}{{^required}}opts['{{paramName}}']{{/required}}{{/collectionFormat}}{{#hasMore}},{{/hasMore}}{{/formParams}}
};
let authNames = [{{#authMethods}}'{{name}}'{{#hasMore}}, {{/hasMore}}{{/authMethods}}];
let contentTypes = [{{#consumes}}'{{& mediaType}}'{{#hasMore}}, {{/hasMore}}{{/consumes}}];
let accepts = [{{#produces}}'{{& mediaType}}'{{#hasMore}}, {{/hasMore}}{{/produces}}];
let returnType = {{#returnType}}{{&returnType}}{{/returnType}}{{^returnType}}null{{/returnType}};
return this.apiClient.callApi(
'{{&path}}', '{{httpMethod}}',
pathParams, queryParams, headerParams, formParams, postBody,
authNames, contentTypes, accepts, returnType{{^usePromises}}, callback{{/usePromises}}
);
}
{{#usePromises}}
{{#emitJSDoc}}
/**{{#summary}}
* {{summary}}{{/summary}}{{#notes}}
* {{notes}}{{/notes}}{{#allParams}}{{#required}}
* @param {{braces "left"}}<&vendorExtensions.x-jsdoc-type>{{braces "right"}} {{paramName}} {{description}}{{/required}}{{/allParams}}{{#hasOptionalParams}}
* @param {{braces "left"}}Object{{braces "right"}} opts Optional parameters{{#allParams}}{{^required}}
* @param {{braces "left"}}{{&vendorExtensions.x-jsdoc-type}}{{braces "right"}} opts.{{paramName}} {{description}}{{#defaultValue}} (default to <.>){{/defaultValue}}{{/required}}{{/allParams}}{{/hasOptionalParams}}{{^usePromises}}
* @param {{braces "left"}}module:{{#invokerPackage}}{{&invokerPackage}}/{{/invokerPackage}}{{#apiPackage}}{{&apiPackage}}/{{/apiPackage}}{{classname}}~{{operationId}}Callback{{braces "right"}} callback The callback function, accepting three arguments: error, data, response{{#returnType}}
* data is of type: {{braces "left"}}@link {{&vendorExtensions.x-jsdoc-type}}{{braces "right"}}{{/returnType}}{{/usePromises}}{{#usePromises}}
* @return {{braces "left"}}Promise{{braces "right"}} a {{braces "left"}}@link https://www.promisejs.org/|Promise{{braces "right"}}{{#returnType}}, with data of type {{braces "left"}}@link {{&vendorExtensions.x-jsdoc-type}}{{braces "right"}}{{/returnType}}{{/usePromises}}
*/
{{/emitJSDoc}} {{operationId}}({{vendorExtensions.x-codegen-arg-list}}) {
return this.{{operationId}}WithHttpInfo({{vendorExtensions.x-codegen-arg-list}})
.then(function(response_and_data) {
return response_and_data.data;
});
}
{{/usePromises}}
{{/operation}}{{/operations}}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy