Chromium Code Reviews| Index: appengine/isolate/handlers_frontend.py |
| diff --git a/appengine/isolate/handlers_frontend.py b/appengine/isolate/handlers_frontend.py |
| index f93736c7497398d8b6f43ad7920c01cc3040c283..90d8048a4ae3ebe77f4228e5ae84d55bd70f2188 100644 |
| --- a/appengine/isolate/handlers_frontend.py |
| +++ b/appengine/isolate/handlers_frontend.py |
| @@ -63,11 +63,27 @@ class RestrictedConfigHandler(auth.AuthenticatingHandler): |
| def get(self): |
| self.common(None) |
| + @staticmethod |
| + def cast_to_type(param_name, value): |
| + def to_bool(value): |
| + if type(value) is bool: |
| + return value |
| + return {'True': True, 'False': False}.get(value, False) |
| + |
| + def to_str(value): |
|
M-A Ruel
2016/02/19 20:51:49
Remove.
Sergey Berezin
2016/02/19 23:20:34
Done.
|
| + return str(value) |
| + |
| + cast = { |
| + 'enable_ts_monitoring': to_bool, |
| + }.get(param_name, to_str) |
|
M-A Ruel
2016/02/19 20:51:49
s/to_str/str/
Sergey Berezin
2016/02/19 23:20:34
Good catch, thx! done.
|
| + return cast(value) |
| + |
| @auth.require(auth.is_admin) |
| def post(self): |
| # Convert MultiDict into a dict. |
| params = { |
| - k: self.request.params.getone(k) for k in self.request.params |
| + k: self.cast_to_type(k, self.request.params.getone(k)) |
| + for k in self.request.params |
| if k not in ('keyid', 'xsrf_token') |
| } |
| cfg = config.settings(fresh=True) |