forked from loafle/openapi-generator-original
128 lines
5.4 KiB
Plaintext
128 lines
5.4 KiB
Plaintext
package {{package}};
|
|
|
|
import {{invokerPackage}}.ApiException;
|
|
import {{invokerPackage}}.ApiClient;
|
|
import {{invokerPackage}}.Configuration;
|
|
import {{invokerPackage}}.Pair;
|
|
|
|
import {{modelPackage}}.*;
|
|
|
|
import java.util.*;
|
|
|
|
{{#imports}}import {{import}};
|
|
{{/imports}}
|
|
|
|
import com.sun.jersey.multipart.FormDataMultiPart;
|
|
import com.sun.jersey.multipart.file.FileDataBodyPart;
|
|
|
|
import javax.ws.rs.core.MediaType;
|
|
|
|
import java.io.File;
|
|
import java.util.Map;
|
|
import java.util.HashMap;
|
|
|
|
{{>generatedAnnotation}}
|
|
{{#operations}}
|
|
public class {{classname}} {
|
|
private ApiClient {{localVariablePrefix}}apiClient;
|
|
|
|
public {{classname}}() {
|
|
this(Configuration.getDefaultApiClient());
|
|
}
|
|
|
|
public {{classname}}(ApiClient apiClient) {
|
|
this.{{localVariablePrefix}}apiClient = apiClient;
|
|
}
|
|
|
|
public ApiClient getApiClient() {
|
|
return {{localVariablePrefix}}apiClient;
|
|
}
|
|
|
|
public void setApiClient(ApiClient apiClient) {
|
|
this.{{localVariablePrefix}}apiClient = apiClient;
|
|
}
|
|
|
|
{{#operation}}
|
|
/**
|
|
* {{summary}}
|
|
* {{notes}}
|
|
{{#allParams}} * @param {{paramName}} {{description}}
|
|
{{/allParams}} * @return {{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}
|
|
*/
|
|
public {{#returnType}}{{{returnType}}} {{/returnType}}{{^returnType}}void {{/returnType}}{{nickname}} ({{#allParams}}{{{dataType}}} {{paramName}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) throws ApiException {
|
|
Object {{localVariablePrefix}}postBody = {{#bodyParam}}{{paramName}}{{/bodyParam}}{{^bodyParam}}null{{/bodyParam}};
|
|
{{#allParams}}{{#required}}
|
|
// verify the required parameter '{{paramName}}' is set
|
|
if ({{paramName}} == null) {
|
|
throw new ApiException(400, "Missing the required parameter '{{paramName}}' when calling {{nickname}}");
|
|
}
|
|
{{/required}}{{/allParams}}
|
|
|
|
// create path and map variables
|
|
String {{localVariablePrefix}}path = "{{path}}".replaceAll("\\{format\\}","json"){{#pathParams}}
|
|
.replaceAll("\\{" + "{{baseName}}" + "\\}", {{localVariablePrefix}}apiClient.escapeString({{{paramName}}}.toString())){{/pathParams}};
|
|
|
|
// query params
|
|
List<Pair> {{localVariablePrefix}}queryParams = new ArrayList<Pair>();
|
|
Map<String, String> {{localVariablePrefix}}headerParams = new HashMap<String, String>();
|
|
Map<String, String> {{localVariablePrefix}}formParams = new HashMap<String, String>();
|
|
|
|
{{#queryParams}}
|
|
{{localVariablePrefix}}queryParams.addAll({{localVariablePrefix}}apiClient.parameterToPairs("{{#collectionFormat}}{{{collectionFormat}}}{{/collectionFormat}}", "{{baseName}}", {{paramName}}));
|
|
{{/queryParams}}
|
|
|
|
{{#headerParams}}if ({{paramName}} != null)
|
|
{{localVariablePrefix}}headerParams.put("{{baseName}}", {{localVariablePrefix}}apiClient.parameterToString({{paramName}}));
|
|
{{/headerParams}}
|
|
|
|
final String[] {{localVariablePrefix}}accepts = {
|
|
{{#produces}}"{{mediaType}}"{{#hasMore}}, {{/hasMore}}{{/produces}}
|
|
};
|
|
final String {{localVariablePrefix}}accept = {{localVariablePrefix}}apiClient.selectHeaderAccept({{localVariablePrefix}}accepts);
|
|
|
|
final String[] {{localVariablePrefix}}contentTypes = {
|
|
{{#consumes}}"{{mediaType}}"{{#hasMore}}, {{/hasMore}}{{/consumes}}
|
|
};
|
|
final String {{localVariablePrefix}}contentType = {{localVariablePrefix}}apiClient.selectHeaderContentType({{localVariablePrefix}}contentTypes);
|
|
|
|
if({{localVariablePrefix}}contentType.startsWith("multipart/form-data")) {
|
|
boolean {{localVariablePrefix}}hasFields = false;
|
|
FormDataMultiPart {{localVariablePrefix}}mp = new FormDataMultiPart();
|
|
{{#formParams}}{{#notFile}}
|
|
if ({{paramName}} != null) {
|
|
{{localVariablePrefix}}hasFields = true;
|
|
{{localVariablePrefix}}mp.field("{{baseName}}", {{localVariablePrefix}}apiClient.parameterToString({{paramName}}), MediaType.MULTIPART_FORM_DATA_TYPE);
|
|
}
|
|
{{/notFile}}{{#isFile}}
|
|
if ({{paramName}} != null) {
|
|
{{localVariablePrefix}}hasFields = true;
|
|
{{localVariablePrefix}}mp.field("{{baseName}}", {{paramName}}.getName());
|
|
{{localVariablePrefix}}mp.bodyPart(new FileDataBodyPart("{{baseName}}", {{paramName}}, MediaType.MULTIPART_FORM_DATA_TYPE));
|
|
}
|
|
{{/isFile}}{{/formParams}}
|
|
if({{localVariablePrefix}}hasFields)
|
|
{{localVariablePrefix}}postBody = {{localVariablePrefix}}mp;
|
|
}
|
|
else {
|
|
{{#formParams}}{{#notFile}}if ({{paramName}} != null)
|
|
{{localVariablePrefix}}formParams.put("{{baseName}}", {{localVariablePrefix}}apiClient.parameterToString({{paramName}}));{{/notFile}}
|
|
{{/formParams}}
|
|
}
|
|
|
|
try {
|
|
String[] {{localVariablePrefix}}authNames = new String[] { {{#authMethods}}"{{name}}"{{#hasMore}}, {{/hasMore}}{{/authMethods}} };
|
|
String {{localVariablePrefix}}response = {{localVariablePrefix}}apiClient.invokeAPI({{localVariablePrefix}}path, "{{httpMethod}}", {{localVariablePrefix}}queryParams, {{localVariablePrefix}}postBody, {{localVariablePrefix}}headerParams, {{localVariablePrefix}}formParams, {{localVariablePrefix}}accept, {{localVariablePrefix}}contentType, {{localVariablePrefix}}authNames);
|
|
if({{localVariablePrefix}}response != null){
|
|
return {{#returnType}}({{{returnType}}}) {{localVariablePrefix}}apiClient.deserialize({{localVariablePrefix}}response, "{{returnContainer}}", {{returnBaseType}}.class){{/returnType}};
|
|
}
|
|
else {
|
|
return {{#returnType}}null{{/returnType}};
|
|
}
|
|
} catch (ApiException ex) {
|
|
throw ex;
|
|
}
|
|
}
|
|
{{/operation}}
|
|
}
|
|
{{/operations}}
|