
                            d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ	 ddl
mZ ddlmZ dd	lmZ  ej                   ej"                  j$                  ej"                  j&                         G d
 dej(                               Zy)z>Command to add-iam-policy-binding to a Dataplex task resource.    )absolute_import)division)unicode_literals)task)
exceptions)base)resource_args)iam_utilc                   X    e Zd ZdZddiZed        Z ej                  d      d        Z	y)AddIamPolicyBindingz3Add IAM policy binding to a Dataplex task resource.EXAMPLESa            To add an IAM policy binding for the role of `roles/dataplex.viewer`
          for the user 'testuser@gmail.com' to task `test-task` within lake
          `test-lake` in location `us-central`, run:

            $ {command} test-task --location=us-central1 --lake=test-lake                 --role=roles/dataplex.viewer --member=user:testuser@gmail.com

          See https://cloud.google.com/dataplex/docs/iam-roles for details of
          policy role and member types.
          c                 Z    t        j                  | d       t        j                  |        y )Nzto add IAM policy binding to.)r	   AddTaskResourceArgr
   AddArgsForAddIamPolicyBinding)parsers    4lib/surface/dataplex/tasks/add_iam_policy_binding.pyArgszAddIamPolicyBinding.Args/   s!    $$V-LM**62    z-Status code: {status_code}. {status_message}.c                     |j                   j                  j                         }t        j                  ||j                  |j
                        }|S )N)CONCEPTSr   Parser   memberrole)selfargstask_refresults       r   RunzAddIamPolicyBinding.Run5   s=     }}!!'')H%%hTYYGFMr   N)
__name__
__module____qualname____doc__detailed_helpstaticmethodr   gcloud_exception CatchHTTPErrorRaiseHTTPExceptionr    r   r   r   r      sO    ; 
- 3 3
 544577r   r   N)r"   
__future__r   r   r   googlecloudsdk.api_lib.dataplexr   googlecloudsdk.api_lib.utilr   r%   googlecloudsdk.callioper   #googlecloudsdk.command_lib.dataplexr	   googlecloudsdk.command_lib.iamr
   ReleaseTracksReleaseTrackALPHAGACommandr   r'   r   r   <module>r3      sj    E &  ' 0 F ( = 3 D%%++T->->-A-AB$,,  Cr   