updated api.mustache of python.

This commit is contained in:
geekerzp 2015-06-03 18:26:51 +08:00
parent a30f537f5f
commit ddc5293e6a
9 changed files with 323 additions and 185 deletions

View File

@ -71,7 +71,6 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig
supportingFiles.add(new SupportingFile("setup.mustache", eggPackage, "setup.py"));
supportingFiles.add(new SupportingFile("api_client.mustache", invokerPackage, "api_client.py"));
supportingFiles.add(new SupportingFile("rest.mustache", invokerPackage, "rest.py"));
supportingFiles.add(new SupportingFile("util.mustache", invokerPackage, "util.py"));
supportingFiles.add(new SupportingFile("configuration.mustache", invokerPackage, "configuration.py"));
supportingFiles.add(new SupportingFile("__init__package.mustache", invokerPackage, "__init__.py"));
supportingFiles.add(new SupportingFile("__init__model.mustache", modelPackage, "__init__.py"));

View File

@ -27,8 +27,6 @@ import os
# python 2 and python 3 compatibility library
from six import iteritems
from ..util import remove_none
from ..api_client import ApiClient
{{#operations}}
@ -66,13 +64,32 @@ class {{classname}}(object):
resource_path = '{{path}}'.replace('{format}', 'json')
method = '{{httpMethod}}'
path_params = remove_none(dict({{#pathParams}}{{baseName}}=params.get('{{paramName}}'){{#hasMore}}, {{/hasMore}}{{/pathParams}}))
query_params = remove_none(dict({{#queryParams}}{{baseName}}=params.get('{{paramName}}'){{#hasMore}}, {{/hasMore}}{{/queryParams}}))
header_params = remove_none(dict({{#headerParams}}{{baseName}}=params.get('{{paramName}}'){{#hasMore}}, {{/hasMore}}{{/headerParams}}))
form_params = remove_none(dict({{#formParams}}{{^isFile}}{{baseName}}=params.get('{{paramName}}'){{#hasMore}}, {{/hasMore}}{{/isFile}}{{/formParams}}))
files = remove_none(dict({{#formParams}}{{#isFile}}{{baseName}}=params.get('{{paramName}}'){{#hasMore}}, {{/hasMore}}{{/isFile}}{{/formParams}}))
body_params = {{#bodyParam}}params.get('{{paramName}}'){{/bodyParam}}{{^bodyParam}}None{{/bodyParam}}
path_params = {}
{{#pathParams}}
if '{{paramName}}' in params:
path_params['{{baseName}}'] = params['{{paramName}}']
{{/pathParams}}
query_params = {}
{{#queryParams}}
if '{{paramName}}' in params:
query_params['{{baseName}}'] = params['{{paramName}}']
{{/queryParams}}
header_params = {}
{{#headerParams}}
if '{{paramName}}' in params:
header_params['{{baseName}}'] = params['{{paramName}}']
{{/headerParams}}
form_params = {}
files = {}
{{#formParams}}
if '{{paramName}}' in params:
{{#notFile}}form_params['{{baseName}}'] = params['{{paramName}}']{{/notFile}}{{#isFile}}files['{{baseName}}'] = params['{{paramName}}']{{/isFile}}
{{/formParams}}
body_params = None
{{#bodyParam}}
if '{{paramName}}' in params:
body_params = params['{{paramName}}']
{{/bodyParam}}
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept([{{#produces}}'{{mediaType}}'{{#hasMore}}, {{/hasMore}}{{/produces}}])
if not header_params['Accept']:

View File

@ -248,11 +248,12 @@ class ApiClient(object):
if files:
for k, v in iteritems(files):
with open(v, 'rb') as f:
filename = os.path.basename(f.name)
filedata = f.read()
mimetype = mimetypes.guess_type(filename)[0] or 'application/octet-stream'
params[k] = tuple([filename, filedata, mimetype])
if v:
with open(v, 'rb') as f:
filename = os.path.basename(f.name)
filedata = f.read()
mimetype = mimetypes.guess_type(filename)[0] or 'application/octet-stream'
params[k] = tuple([filename, filedata, mimetype])
return params

View File

@ -1,16 +0,0 @@
# coding: utf-8
from six import iteritems
def remove_none(obj):
"""
Remove None from `list`, `tuple`, `set`.
Remove None value from `dict`.
"""
if isinstance(obj, (list, tuple, set)):
return type(obj)(remove_none(x) for x in obj if x is not None)
elif isinstance(obj, dict):
return type(obj)((remove_none(k), remove_none(v))
for k, v in iteritems(obj) if k is not None and v is not None)
else:
return obj

View File

@ -248,11 +248,12 @@ class ApiClient(object):
if files:
for k, v in iteritems(files):
with open(v, 'rb') as f:
filename = os.path.basename(f.name)
filedata = f.read()
mimetype = mimetypes.guess_type(filename)[0] or 'application/octet-stream'
params[k] = tuple([filename, filedata, mimetype])
if v:
with open(v, 'rb') as f:
filename = os.path.basename(f.name)
filedata = f.read()
mimetype = mimetypes.guess_type(filename)[0] or 'application/octet-stream'
params[k] = tuple([filename, filedata, mimetype])
return params

View File

@ -27,8 +27,6 @@ import os
# python 2 and python 3 compatibility library
from six import iteritems
from ..util import remove_none
from ..api_client import ApiClient
class PetApi(object):
@ -61,13 +59,20 @@ class PetApi(object):
resource_path = '/pet'.replace('{format}', 'json')
method = 'PUT'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -105,13 +110,20 @@ class PetApi(object):
resource_path = '/pet'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -149,13 +161,20 @@ class PetApi(object):
resource_path = '/pet/findByStatus'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict())
query_params = remove_none(dict(status=params.get('status')))
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
query_params = {}
if 'status' in params:
query_params['status'] = params['status']
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -195,13 +214,20 @@ class PetApi(object):
resource_path = '/pet/findByTags'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict())
query_params = remove_none(dict(tags=params.get('tags')))
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
query_params = {}
if 'tags' in params:
query_params['tags'] = params['tags']
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -245,13 +271,20 @@ class PetApi(object):
resource_path = '/pet/{petId}'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict(petId=params.get('pet_id')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'pet_id' in params:
path_params['petId'] = params['pet_id']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -297,13 +330,26 @@ class PetApi(object):
resource_path = '/pet/{petId}'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict(petId=params.get('pet_id')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict(name=params.get('name'), status=params.get('status')))
files = remove_none(dict())
path_params = {}
if 'pet_id' in params:
path_params['petId'] = params['pet_id']
query_params = {}
header_params = {}
form_params = {}
files = {}
if 'name' in params:
form_params['name'] = params['name']
if 'status' in params:
form_params['status'] = params['status']
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -346,13 +392,23 @@ class PetApi(object):
resource_path = '/pet/{petId}'.replace('{format}', 'json')
method = 'DELETE'
path_params = remove_none(dict(petId=params.get('pet_id')))
query_params = remove_none(dict())
header_params = remove_none(dict(api_key=params.get('api_key')))
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'pet_id' in params:
path_params['petId'] = params['pet_id']
query_params = {}
header_params = {}
if 'api_key' in params:
header_params['api_key'] = params['api_key']
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -396,13 +452,26 @@ class PetApi(object):
resource_path = '/pet/{petId}/uploadImage'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict(petId=params.get('pet_id')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict(additionalMetadata=params.get('additional_metadata'), ))
files = remove_none(dict(file=params.get('file')))
path_params = {}
if 'pet_id' in params:
path_params['petId'] = params['pet_id']
query_params = {}
header_params = {}
form_params = {}
files = {}
if 'additional_metadata' in params:
form_params['additionalMetadata'] = params['additional_metadata']
if 'file' in params:
files['file'] = params['file']
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -427,3 +496,6 @@ class PetApi(object):

View File

@ -27,8 +27,6 @@ import os
# python 2 and python 3 compatibility library
from six import iteritems
from ..util import remove_none
from ..api_client import ApiClient
class StoreApi(object):
@ -60,13 +58,17 @@ class StoreApi(object):
resource_path = '/store/inventory'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -106,13 +108,20 @@ class StoreApi(object):
resource_path = '/store/order'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -156,13 +165,20 @@ class StoreApi(object):
resource_path = '/store/order/{orderId}'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict(orderId=params.get('order_id')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'order_id' in params:
path_params['orderId'] = params['order_id']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -206,13 +222,20 @@ class StoreApi(object):
resource_path = '/store/order/{orderId}'.replace('{format}', 'json')
method = 'DELETE'
path_params = remove_none(dict(orderId=params.get('order_id')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'order_id' in params:
path_params['orderId'] = params['order_id']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:

View File

@ -27,8 +27,6 @@ import os
# python 2 and python 3 compatibility library
from six import iteritems
from ..util import remove_none
from ..api_client import ApiClient
class UserApi(object):
@ -61,13 +59,20 @@ class UserApi(object):
resource_path = '/user'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -105,13 +110,20 @@ class UserApi(object):
resource_path = '/user/createWithArray'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -149,13 +161,20 @@ class UserApi(object):
resource_path = '/user/createWithList'.replace('{format}', 'json')
method = 'POST'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -194,13 +213,23 @@ class UserApi(object):
resource_path = '/user/login'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict())
query_params = remove_none(dict(username=params.get('username'), password=params.get('password')))
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
query_params = {}
if 'username' in params:
query_params['username'] = params['username']
if 'password' in params:
query_params['password'] = params['password']
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -239,13 +268,17 @@ class UserApi(object):
resource_path = '/user/logout'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict())
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -287,13 +320,20 @@ class UserApi(object):
resource_path = '/user/{username}'.replace('{format}', 'json')
method = 'GET'
path_params = remove_none(dict(username=params.get('username')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'username' in params:
path_params['username'] = params['username']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -338,13 +378,23 @@ class UserApi(object):
resource_path = '/user/{username}'.replace('{format}', 'json')
method = 'PUT'
path_params = remove_none(dict(username=params.get('username')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
body_params = params.get('body')
path_params = {}
if 'username' in params:
path_params['username'] = params['username']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:
@ -386,13 +436,20 @@ class UserApi(object):
resource_path = '/user/{username}'.replace('{format}', 'json')
method = 'DELETE'
path_params = remove_none(dict(username=params.get('username')))
query_params = remove_none(dict())
header_params = remove_none(dict())
form_params = remove_none(dict())
files = remove_none(dict())
path_params = {}
if 'username' in params:
path_params['username'] = params['username']
query_params = {}
header_params = {}
form_params = {}
files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(['application/json', 'application/xml'])
if not header_params['Accept']:

View File

@ -1,16 +0,0 @@
# coding: utf-8
from six import iteritems
def remove_none(obj):
"""
Remove None from `list`, `tuple`, `set`.
Remove None value from `dict`.
"""
if isinstance(obj, (list, tuple, set)):
return type(obj)(remove_none(x) for x in obj if x is not None)
elif isinstance(obj, dict):
return type(obj)((remove_none(k), remove_none(v))
for k, v in iteritems(obj) if k is not None and v is not None)
else:
return obj