Re: Sample to list all user members from a group (issue 5536049)

14 views
Skip to first unread message

ala...@google.com

unread,
Jan 20, 2012, 6:44:47 PM1/20/12
to shra...@google.com, afs...@google.com, vicf...@google.com, gdata-python-client-...@googlegroups.com, re...@codereview-hr.appspotmail.com

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py
File samples/apps/list_group_members.py (right):

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode17
samples/apps/list_group_members.py:17: """Sample to list all the user
members of a group.
s/user //

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode37
samples/apps/list_group_members.py:37: """Get an OAuth 2.0 for the given
credentials.
"Get an OAuth 2.0 token using the provided client_id and client_secret."

Also, add a link to the API console explaining how to get those 2
values.

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode40
samples/apps/list_group_members.py:40: client_id: String client id of
the developer.
s/String/String,/

Same below.

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode58
samples/apps/list_group_members.py:58: """Lists all user members
including the users from member groups.
"Lists all members including members of sub-groups."

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode67
samples/apps/list_group_members.py:67: group_members =
group_client.RetrieveAllMembers(group_id)
Add try/except block to catch API errors.

Also, out of curiosity, does this handle paging?

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode71
samples/apps/list_group_members.py:71: # Assuming there is no cycle,
i.e. groups are not members of each other
As an improvement, you can use a set of visited group ID in order to
avoid cycles and maybe use a max_depth variable as well.

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode79
samples/apps/list_group_members.py:79: usage = 'Usage: %prog [options]'
If the arguments are mandatory, there are not options. Please change the
usage.

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode92
samples/apps/list_group_members.py:92: and options.GROUP_ID):
Fix indentation.

http://codereview.appspot.com/5536049/

vicf...@google.com

unread,
Jan 20, 2012, 10:27:09 PM1/20/12
to shra...@google.com, afs...@google.com, ala...@google.com, gdata-python-client-...@googlegroups.com, re...@codereview-hr.appspotmail.com

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode31
samples/apps/list_group_members.py:31:
2 lines between imports and first statement

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode56
samples/apps/list_group_members.py:56:
Again, 2 lines between all top-level members.

http://codereview.appspot.com/5536049/diff/2002/samples/apps/list_group_members.py#newcode78
samples/apps/list_group_members.py:78: def main():
docstring

http://codereview.appspot.com/5536049/

Reply all
Reply to author
Forward
0 new messages