Skip to content

Commit 8afed5d

Browse files
temblekingmstemm
authored andcommitted
Make sdcclient fully compatible with Python 3 (#52)
1 parent 595a0e7 commit 8afed5d

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

sdcclient/_client.py

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -628,12 +628,12 @@ def edit_user(self, user_email, firstName=None, lastName=None, systemRole=None):
628628
}
629629

630630
if firstName == None:
631-
reqbody['firstName'] = user['firstName'] if 'firstName' in user.keys() else ''
631+
reqbody['firstName'] = user['firstName'] if 'firstName' in list(user.keys()) else ''
632632
else:
633633
reqbody['firstName'] = firstName
634634

635635
if lastName == None:
636-
reqbody['lastName'] = user['lastName'] if 'lastName' in user.keys() else ''
636+
reqbody['lastName'] = user['lastName'] if 'lastName' in list(user.keys()) else ''
637637
else:
638638
reqbody['lastName'] = lastName
639639

@@ -655,7 +655,7 @@ def get_teams(self, team_filter=''):
655655
res = requests.get(self.url + '/api/teams', headers=self.hdrs, verify=self.ssl_verify)
656656
if not self._checkResponse(res):
657657
return [False, self.lasterr]
658-
ret = filter(lambda t: team_filter in t['name'],res.json()['teams'])
658+
ret = [t for t in res.json()['teams'] if team_filter in t['name']]
659659
return [True, ret]
660660

661661
def get_team(self, name):
@@ -683,29 +683,29 @@ def get_team_ids(self, teams):
683683
res = requests.get(self.url + '/api/teams', headers=self.hdrs, verify=self.ssl_verify)
684684
if not self._checkResponse(res):
685685
return [False, self.lasterr]
686-
u = filter(lambda x: x['name'] in teams, res.json()['teams'])
687-
return [True, map(lambda x: x['id'], u)]
686+
u = [x for x in res.json()['teams'] if x['name'] in teams]
687+
return [True, [x['id'] for x in u]]
688688

689689
def _get_user_id_dict(self, users):
690690
res = requests.get(self.url + '/api/users', headers=self.hdrs, verify=self.ssl_verify)
691691
if not self._checkResponse(res):
692692
return [False, self.lasterr]
693-
u = filter(lambda x: x['username'] in users, res.json()['users'])
693+
u = [x for x in res.json()['users'] if x['username'] in users]
694694
return [True, dict((user['username'], user['id']) for user in u)]
695695

696696
def _get_id_user_dict(self, user_ids):
697697
res = requests.get(self.url + '/api/users', headers=self.hdrs, verify=self.ssl_verify)
698698
if not self._checkResponse(res):
699699
return [False, self.lasterr]
700-
u = filter(lambda x: x['id'] in user_ids, res.json()['users'])
700+
u = [x for x in res.json()['users'] if x['id'] in user_ids]
701701
return [True, dict((user['id'], user['username']) for user in u)]
702702

703703
def get_user_ids(self, users):
704704
res = self._get_user_id_dict(users)
705705
if res[0] == False:
706706
return res
707707
else:
708-
return [True, res[1].values()]
708+
return [True, list(res[1].values())]
709709

710710
def create_team(self, name, memberships=None, filter='', description='', show='host', theme='#7BB0B2',
711711
perm_capture=False, perm_custom_events=False, perm_aws_data=False):
@@ -742,15 +742,15 @@ def create_team(self, name, memberships=None, filter='', description='', show='h
742742

743743
# Map user-names to IDs
744744
if memberships != None and len(memberships) != 0:
745-
res = self._get_user_id_dict(memberships.keys())
745+
res = self._get_user_id_dict(list(memberships.keys()))
746746
if res[0] == False:
747747
return [False, 'Could not fetch IDs for user names']
748748
reqbody['userRoles'] = [
749749
{
750750
'userId': user_id,
751751
'role': memberships[user_name]
752752
}
753-
for (user_name, user_id) in res[1].iteritems()
753+
for (user_name, user_id) in res[1].items()
754754
]
755755
else:
756756
reqbody['users'] = []
@@ -805,30 +805,30 @@ def edit_team(self, name, memberships=None, filter=None, description=None, show=
805805
# Handling team description
806806
if description is not None:
807807
reqbody['description'] = description
808-
elif 'description' in t.keys():
808+
elif 'description' in list(t.keys()):
809809
reqbody['description'] = t['description']
810810

811811
# Handling for users to map (user-name, team-role) pairs to memberships
812812
if memberships != None:
813-
res = self._get_user_id_dict(memberships.keys())
813+
res = self._get_user_id_dict(list(memberships.keys()))
814814
if res[0] == False:
815815
return [False, 'Could not convert user names to IDs']
816816
reqbody['userRoles'] = [
817817
{
818818
'userId': user_id,
819819
'role': memberships[user_name]
820820
}
821-
for (user_name, user_id) in res[1].iteritems()
821+
for (user_name, user_id) in res[1].items()
822822
]
823-
elif 'userRoles' in t.keys():
823+
elif 'userRoles' in list(t.keys()):
824824
reqbody['userRoles'] = t['userRoles']
825825
else:
826826
reqbody['userRoles'] = []
827827

828828
# Special handling for filters since we don't support blank filters
829829
if filter != None:
830830
reqbody['filter'] = filter
831-
elif 'filter' in t.keys():
831+
elif 'filter' in list(t.keys()):
832832
reqbody['filter'] = t['filter']
833833

834834
res = requests.put(self.url + '/api/teams/' + str(t['id']), headers=self.hdrs, data=json.dumps(reqbody), verify=self.ssl_verify)
@@ -875,15 +875,15 @@ def list_memberships(self, team):
875875
return res
876876

877877
raw_memberships = res[1]['userRoles']
878-
user_ids = map(lambda m: m['userId'], raw_memberships)
878+
user_ids = [m['userId'] for m in raw_memberships]
879879

880880
res = self._get_id_user_dict(user_ids)
881881
if res[0] == False:
882882
return [False, 'Could not fetch IDs for user names']
883883
else:
884884
id_user_dict = res[1]
885885

886-
return [True, dict(map(lambda m: (id_user_dict[m['userId']], m['role']), raw_memberships))]
886+
return [True, dict([(id_user_dict[m['userId']], m['role']) for m in raw_memberships])]
887887

888888
def save_memberships(self, team, memberships):
889889
'''
@@ -932,7 +932,7 @@ def remove_memberships(self, team, users):
932932
return res
933933

934934
old_memberships = res[1]
935-
new_memberships = {k: v for k, v in old_memberships.iteritems() if k not in users}
935+
new_memberships = {k: v for k, v in old_memberships.items() if k not in users}
936936

937937
res = self.edit_team(team, new_memberships)
938938

@@ -1318,7 +1318,7 @@ def filter_fn(configuration):
13181318
def create_item(configuration):
13191319
return {'dashboard': configuration}
13201320

1321-
dashboards = map(create_item, filter(filter_fn, res[1]['dashboards']))
1321+
dashboards = list(map(create_item, list(filter(filter_fn, res[1]['dashboards']))))
13221322
return [True, dashboards]
13231323

13241324
def create_dashboard_with_configuration(self, configuration):
@@ -1549,7 +1549,7 @@ def remove_dashboard_panel(self, dashboard, panel_name):
15491549
#
15501550
def filter_fn(panel):
15511551
return panel['name'] == panel_name
1552-
panels = filter(filter_fn, dashboard_configuration['items'])
1552+
panels = list(filter(filter_fn, dashboard_configuration['items']))
15531553

15541554
if len(panels) > 0:
15551555
#
@@ -1592,8 +1592,8 @@ def create_dashboard_from_template(self, newdashname, template, scope=[], shared
15921592
#
15931593
baseconfid = newdashname
15941594
for sentry in scope:
1595-
baseconfid = baseconfid + str(sentry.keys()[0])
1596-
baseconfid = baseconfid + str(sentry.values()[0])
1595+
baseconfid = baseconfid + str(list(sentry.keys())[0])
1596+
baseconfid = baseconfid + str(list(sentry.values())[0])
15971597

15981598
#
15991599
# Clean up the dashboard we retireved so it's ready to be pushed
@@ -1610,9 +1610,9 @@ def create_dashboard_from_template(self, newdashname, template, scope=[], shared
16101610
filters = []
16111611
gby = []
16121612
for sentry in scope:
1613-
filters.append({'metric' : sentry.keys()[0], 'op' : '=', 'value' : sentry.values()[0],
1613+
filters.append({'metric' : list(sentry.keys())[0], 'op' : '=', 'value' : list(sentry.values())[0],
16141614
'filters' : None})
1615-
gby.append({'metric': sentry.keys()[0]})
1615+
gby.append({'metric': list(sentry.keys())[0]})
16161616

16171617
filter = {
16181618
'filters' :

0 commit comments

Comments
 (0)