0005-jsonresponse-simplify-decorator-wrapper-17175.patch
passerelle/utils/jsonresponse.py | ||
---|---|---|
30 | 30 | |
31 | 31 |
class to_json(object): |
32 | 32 |
def __init__(self, error_code=500, **kwargs): |
33 |
self.method = None |
|
34 | 33 |
self.error_code = error_code |
35 | 34 |
self.kwargs = kwargs |
36 | 35 |
if 'cls' not in self.kwargs: |
... | ... | |
39 | 38 |
def __call__(self, f): |
40 | 39 |
@functools.wraps(f) |
41 | 40 |
def wrapper(*args, **kwargs): |
42 |
if self.method: |
|
43 |
return self.method(f, *args, **kwargs) |
|
44 | ||
45 |
if not args: |
|
46 |
self.method = self.api_func |
|
47 | ||
48 |
if getattr(getattr(args[0], f.__name__, None), "im_self", False): |
|
49 |
self.method = self.api_method |
|
50 |
else: |
|
51 |
self.method = self.api_func |
|
52 | ||
53 |
return self.method(f, *args, **kwargs) |
|
41 |
method = self.api_func |
|
42 |
if args and getattr(getattr(args[0], f.__name__, None), "im_self", False): |
|
43 |
method = self.api_method |
|
44 |
return method(f, *args, **kwargs) |
|
54 | 45 | |
55 | 46 |
return wrapper |
56 | 47 | |
57 |
- |