
    [	                         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$                         G d
 dej&                               Zy)zL`gcloud dataplex data-taxonomies attributes add-iam-policy-binding` command.    )absolute_import)division)unicode_literals)data_taxonomy)
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)AddIamPolicyBindingz4Add IAM policy binding to a Dataplex Data Attribute.EXAMPLESa            To add an IAM policy binding for the role of `roles/dataplex.viewer`
          for the user `test-user@gmail.com` to Data Attribute `test-attribute` in location
          `us-central`, in Data Taxonomy 'test-taxonomy', run:

            $ {command} test-attribute --project=test-project  --location=us-central1 --data_taxonomy=test-datataxonomy --role=roles/dataplex.viewer --member=user:foo@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	   AddAttributeResourceArgr
   AddArgsForAddIamPolicyBinding)parsers    Ilib/surface/dataplex/data_taxonomies/attributes/add_iam_policy_binding.pyArgszAddIamPolicyBinding.Args/   s&    ))&*IK **62    z-Status code: {status_code}. {status_message}.c                     |j                   j                  j                         }t        j                  ||j
                  |j                        }|S )N)CONCEPTSdata_attributeParser    DataAttributeAddIamPolicyBindingmemberrole)selfargsdata_attribute_refresults       r   RunzAddIamPolicyBinding.Run6   sA     55;;=;;DKK4F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Commandr   r)   r   r   <module>r4      s]    S &  ' : F ( = 3 D%%++,$,,  -r   