
    -                     Z    S r SSKJr  SSKJr  SSKJr  SSKJr  SrS rS r	S	 r
S
 rS rg)zCUseful commands for interacting with the Cloud Identity Groups API.    )absolute_import)division)unicode_literals)apiscloudidentityc                 8    [         R                  " [        U 5      $ )zImport and return the appropriate Cloud Identity Groups client.

Args:
  version: str, the version of the API desired

Returns:
  Cloud Identity Groups client for the appropriate release track
)r   GetClientInstanceAPI_NAMEversions    ;lib/googlecloudsdk/api_lib/identity/cloudidentity_client.py	GetClientr           
		'	22    c                 8    [         R                  " [        U 5      $ )zImport and return the appropriate Cloud Identity Groups messages module.

Args:
  version: str, the version of the API desired

Returns:
  Cloud Identity Groups messages for the appropriate release track
)r   GetMessagesModuler
   r   s    r   GetMessagesr   %   r   r   c                 ~    [        U 5      n[        U 5      nUR                  R                  UR	                  US95      $ )zGet a Cloud Identity Group.

Args:
  version: Release track information.
  group: Name of group as returned by LookupGroupName()
    (i.e. 'groups/{group_id}').
Returns:
  Group resource object.
)name)r   r   groupsGetCloudidentityGroupsGetRequest)r   groupclientmessagess       r   GetGroupr   1   s@     W&!(			,,%,8
: :r   c                 ~    [        U 5      n[        U 5      nUR                  R                  UR	                  US95      $ )a(  Lookup Group Name for a specified group key id.

Args:
  version: Release track information
  email: str, group email

Returns:
  LookupGroupNameResponse: Response message for LookupGroupName operation
  which is containing a resource name of the group in the format:
  'name: groups/{group_id}'
)groupKey_id)r   r   r   Lookup CloudidentityGroupsLookupRequest)r   emailr   r   s       r   LookupGroupNamer"   A   sB     W&!(			//E/B
D Dr   c                 ~    [        U 5      n[        U 5      nUR                  R                  UR	                  X!S95      $ )a  Lookup membership name for a specific pair of member key id and group email.

Args:
  version: Release track information
  group_id: str, group id (e.g. groups/03qco8b4452k99t)
  member_email: str, member email
Returns:
  LookupMembershipNameResponse: Response message for LookupMembershipName
  operation which is containing a resource name of the membership in the
  format:
  'name: members/{member_id}'
)memberKey_idparent)r   r   groups_membershipsr   +CloudidentityGroupsMembershipsLookupRequest)r   group_idmember_emailr   r   s        r   LookupMembershipNamer*   U   sG     W&!(		"	"	)	)::# ; 6
7 7r   N)__doc__
__future__r   r   r   googlecloudsdk.api_lib.utilr   r
   r   r   r   r"   r*    r   r   <module>r/      s6    J &  ' ,	3	3: D(7r   