summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xeffitool24
1 files changed, 11 insertions, 13 deletions
diff --git a/effitool b/effitool
index 35febb6..8617b35 100755
--- a/effitool
+++ b/effitool
@@ -316,13 +316,7 @@ class Tool:
server = self.get_chosen_server(args)
token = self.get_admin_token(server)
api = HTTPAPI(server['url'])
-
- rid = args['rid']
- headers = {
- 'Muck-Id': rid,
- }
-
- memb = api.get_json(token, '/memb', headers=headers)
+ memb = self._fetch_member(api, token, args['rid'])
print(json.dumps(memb, indent=4))
def update_member(self, args):
@@ -392,14 +386,18 @@ class Tool:
obj = api.get_list(token, '/search', headers=headers, body=body)
rids = obj.get('resources', [])
- members = {}
- for rid in rids:
- headers = {
- 'Muck-Id': rid,
- }
- members[rid] = api.get_json(token, '/memb', headers=headers)
+ members = {
+ rid: self._fetch_member(api, token, rid)
+ for rid in rids
+ }
json.dump(members, sys.stdout, indent=4)
+ def _fetch_member(self, api, token, rid):
+ headers = {
+ 'Muck-Id': rid,
+ }
+ return api.get_json(token, '/memb', headers=headers)
+
def uniq(items):
return list(sorted(set(items)))