diff options
author | Lars Wirzenius <liw@liw.fi> | 2017-10-15 17:49:34 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2017-10-15 17:49:34 +0300 |
commit | 9228f5020473320673bb2f6209643ccfaee27766 (patch) | |
tree | 33ebe4fe16993a296e8eef77b2e1ed3fed1b563e | |
parent | f8addb6a19711394aceb2aae5c6496da4bc86cf2 (diff) | |
download | ick2-9228f5020473320673bb2f6209643ccfaee27766.tar.gz |
Refactor: rename callback methods to be clearer
-rw-r--r-- | ick2/controllerapi.py | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/ick2/controllerapi.py b/ick2/controllerapi.py index 1e7c488..4ed14c1 100644 --- a/ick2/controllerapi.py +++ b/ick2/controllerapi.py @@ -43,34 +43,34 @@ class ControllerAPI: { 'method': 'POST', 'path': '/projects', - 'callback': self.post_callback(self.post_projects), + 'callback': self.POST(self.post_projects), }, { 'method': 'GET', 'path': '/projects', - 'callback': self.get_callback(self.get_projects), + 'callback': self.GET(self.get_projects), }, { 'method': 'GET', 'path': '/projects/<project>', - 'callback': self.get_callback(self.get_project), + 'callback': self.GET(self.get_project), }, { 'method': 'PUT', 'path': '/projects/<project>', - 'callback': self.put_callback(self.put_projects), + 'callback': self.PUT(self.put_projects), }, { 'method': 'DELETE', 'path': '/projects/<project>', - 'callback': self.get_callback(self.delete_projects), + 'callback': self.DELETE(self.delete_projects), }, ] def get_version(self, *args, **kwargs): return OK({'version': ick2.__version__}) - def get_callback(self, callback): # pragma: no cover + def GET(self, callback): # pragma: no cover def wrapper(content_type, body, **kwargs): try: if 'raw_uri_path' in kwargs: @@ -81,14 +81,14 @@ class ControllerAPI: return OK(body) return wrapper - def post_callback(self, callback): # pragma: no cover + def POST(self, callback): # pragma: no cover def wrapper(content_type, body, **kwargs): body = callback(body) ick2.log.log('trace', msg_text='returned body', body=repr(body)) return created(body) return wrapper - def put_callback(self, callback): # pragma: no cover + def PUT(self, callback): # pragma: no cover def wrapper(content_type, body, **kwargs): if 'raw_uri_path' in kwargs: del kwargs['raw_uri_path'] @@ -97,6 +97,17 @@ class ControllerAPI: return OK(body) return wrapper + def DELETE(self, callback): # pragma: no cover + def wrapper(content_type, body, **kwargs): + try: + if 'raw_uri_path' in kwargs: + del kwargs['raw_uri_path'] + body = callback(**kwargs) + except ick2.NotFound as e: + return not_found(e) + return OK(body) + return wrapper + def get_projects(self): return { 'projects': self._state.get_projects(), |