no-self-use,
too-few-public-methods,
no-member,
- fixme
+ fixme,
+ too-many-arguments,
+ too-many-locals
# Enable the message, report, category or checker with the given id(s). You can
# either give multiple identifier separated by comma (,) or put this option
return tpl.format(lis='\n'.join(endpoints))
-# pylint: disable=too-many-locals
def browsable_api_view(meth):
def wrapper(self, *vpath, **kwargs):
assert isinstance(self, BaseController)
return method(*vpath, **params)
- @staticmethod
- def args_from_json(func):
- func._args_from_json_ = True
- return func
-
@staticmethod
def _function_args(func):
if sys.version_info > (3, 0): # pylint: disable=no-else-return
def inner(*args, **kwargs):
if cherrypy.request.headers.get('Content-Type',
'') == 'application/x-www-form-urlencoded':
- if hasattr(func, '_args_from_json_'): # pylint: disable=no-else-return
- return func(*args, **kwargs)
- else:
- return func(kwargs)
+ return func(*args, **kwargs)
content_length = int(cherrypy.request.headers['Content-Length'])
body = cherrypy.request.body.read(content_length)
except Exception as e:
raise cherrypy.HTTPError(400, 'Failed to decode JSON: {}'
.format(str(e)))
- if hasattr(func, '_args_from_json_'):
- kwargs.update(data.items())
- return func(*args, **kwargs)
- kwargs['data'] = data
+ kwargs.update(data.items())
return func(*args, **kwargs)
return inner
| | seconds without activity |
"""
- @RESTController.args_from_json
def create(self, username, password, stay_signed_in=False):
now = time.time()
config_username = mgr.get_config('username', None)
return names
- # pylint: disable=too-many-locals,too-many-statements,too-many-branches
+ # pylint: disable=too-many-statements,too-many-branches
def fs_status(self, fs_id):
mds_versions = defaultdict(list)
except KeyError:
raise NotFound('No such erasure code profile')
- # pylint: disable=too-many-arguments
- @RESTController.args_from_json
def create(self, name, k, m, plugin=None, ruleset_failure_domain=None, **kwargs):
kwargs['k'] = k
kwargs['m'] = m
return CephService.send_command('mon', 'osd pool delete', pool=pool_name, pool2=pool_name,
sure='--yes-i-really-really-mean-it')
- # pylint: disable=too-many-arguments, too-many-locals
- @RESTController.args_from_json
def create(self, pool, pg_num, pool_type, erasure_code_profile=None, flags=None,
application_metadata=None, rule_name=None, **kwargs):
ecp = erasure_code_profile if erasure_code_profile else None
# -*- coding: utf-8 -*-
-# pylint: disable=too-many-arguments,too-many-locals,unused-argument,
+# pylint: disable=unused-argument
# pylint: disable=too-many-statements,too-many-branches
from __future__ import absolute_import
@RbdTask('create',
{'pool_name': '{pool_name}', 'image_name': '{name}'}, 2.0)
- @RESTController.args_from_json
def create(self, name, pool_name, size, obj_size=None, features=None,
stripe_unit=None, stripe_count=None, data_pool=None):
return _rbd_call(pool_name, rbd_inst.remove, image_name)
@RbdTask('edit', ['{pool_name}', '{image_name}'], 4.0)
- @RESTController.args_from_json
def set(self, pool_name, image_name, name=None, size=None, features=None):
def _edit(ioctx, image):
rbd_inst = rbd.RBD()
'dest_pool_name': '{dest_pool_name}',
'dest_image_name': '{dest_image_name}'}, 2.0)
@RESTController.resource(['POST'])
- @RESTController.args_from_json
def copy(self, pool_name, image_name, dest_pool_name, dest_image_name,
obj_size=None, features=None, stripe_unit=None,
stripe_count=None, data_pool=None):
@RbdTask('snap/create',
['{pool_name}', '{image_name}', '{snapshot_name}'], 2.0)
- @RESTController.args_from_json
def create(self, pool_name, image_name, snapshot_name):
def _create_snapshot(ioctx, img, snapshot_name):
img.create_snap(snapshot_name)
@RbdTask('snap/edit',
['{pool_name}', '{image_name}', '{snapshot_name}'], 4.0)
- @RESTController.args_from_json
def set(self, pool_name, image_name, snapshot_name, new_snap_name=None,
is_protected=None):
def _edit(ioctx, img, snapshot_name):
'child_pool_name': '{child_pool_name}',
'child_image_name': '{child_image_name}'}, 2.0)
@RESTController.resource(['POST'])
- @RESTController.args_from_json
def clone(self, pool_name, image_name, snapshot_name, child_pool_name,
child_image_name, obj_size=None, features=None,
stripe_unit=None, stripe_count=None, data_pool=None):
@ApiController('tcmuiscsi')
@AuthRequired()
class TcmuIscsi(RESTController):
- # pylint: disable=too-many-locals,too-many-nested-blocks
+ # pylint: disable=too-many-nested-blocks
def list(self): # pylint: disable=unused-argument
daemons = {}
images = {}
sleep_time = 0.0
@Task('task/create', {'param': '{param}'}, wait_for=1.0)
- @RESTController.args_from_json
def create(self, param):
time.sleep(TaskTest.sleep_time)
return {'my_param': param}
@Task('task/set', {'param': '{2}'}, wait_for=1.0)
- @RESTController.args_from_json
def set(self, key, param=None):
time.sleep(TaskTest.sleep_time)
return {'key': key, 'my_param': param}
@Task('task/delete', ['{key}'], wait_for=1.0)
- @RESTController.args_from_json
def delete(self, key):
# pylint: disable=unused-argument
time.sleep(TaskTest.sleep_time)
@Task('task/foo', ['{param}'])
@RESTController.collection(['POST'])
- @RESTController.args_from_json
def foo(self, param):
return {'my_param': param}
@Task('task/bar', ['{key}', '{param}'])
@RESTController.resource(['PUT'])
- @RESTController.args_from_json
def bar(self, key, param=None):
return {'my_param': param, 'key': key}
def list(self):
return FooResource.elems
- def create(self, data):
- FooResource.elems.append(data)
- return data
+ def create(self, a):
+ FooResource.elems.append({'a': a})
+ return {'a': a}
def get(self, key):
return {'detail': (key, [])}
def bulk_delete(self):
FooResource.elems = []
- def set(self, key, data):
- FooResource.elems[int(key)] = data
- return dict(key=key, **data)
+ def set(self, key, newdata):
+ FooResource.elems[int(key)] = {'newdata': newdata}
+ return dict(key=key, newdata=newdata)
@ApiController('foo/:key/:method')
@ApiController('fooargs')
class FooArgs(RESTController):
- @RESTController.args_from_json
def set(self, code, name=None, opt1=None, opt2=None):
return {'code': code, 'name': name, 'opt1': opt1, 'opt2': opt2}