From 6f12afcb9a7aa04c9c0c92ffe634f12ac855864e Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Sat, 23 Mar 2019 14:34:22 +0200 Subject: Refactor: add Session.add_member, update_member, and delete_member --- effitool | 44 +++++++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/effitool b/effitool index 36a7fa7..a6e59e2 100755 --- a/effitool +++ b/effitool @@ -239,6 +239,21 @@ class Session: client['allowed_scopes'] = uniq(s for s in old if s not in denied) self.update_client(client_id, client) + def add_member(self, member): + self._api.post_json(self._token, '/memb', member) + + def update_member(self, rid, member): + headers = { + 'Muck-Id': rid, + } + self._api.put_json(self._token, '/memb', member, headers=headers) + + def delete_member(self, rid): + headers = { + 'Muck-Id': rid, + } + self._api.delete(self._token, '/memb', headers=headers) + def fetch_member(self, rid): headers = { 'Muck-Id': rid, @@ -350,11 +365,8 @@ class Tool: def add_member(self, args): with open(args['filename']) as f: memb = json.load(f) - - server = self.get_chosen_server(args) - token = self.get_admin_token(server) - api = HTTPAPI(server['url']) - api.post_json(token, '/memb', memb) + session = self.get_session(args) + session.add_member(memb) def show_member(self, args): session = self.get_session(args) @@ -362,28 +374,14 @@ class Tool: self._format_json(memb, sys.stdout) def update_member(self, args): - rid = args['rid'] with open(args['filename']) as f: memb = json.load(f) - - headers = { - 'Muck-Id': args['rid'], - } - - server = self.get_chosen_server(args) - token = self.get_admin_token(server) - api = HTTPAPI(server['url']) - api.put_json(token, '/memb', memb, headers=headers) + session = self.get_session(args) + session.update_member(args['rid'], memb) def delete_member(self, args): - headers = { - 'Muck-Id': args['rid'], - } - - server = self.get_chosen_server(args) - token = self.get_admin_token(server) - api = HTTPAPI(server['url']) - api.delete(token, '/memb', headers=headers) + session = self.get_session(args) + session.delete_member(args['rid']) def list_members(self, args): session = self.get_session(args) -- cgit v1.2.1