
                            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  ej                  ej                  j                  ej                  j                        ej                    G d dej"                                      Zy	)
z<`gcloud dataplex glossaries set-iam-policy-binding` command.    )glossary)
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)SetIamPolicyzSet an IAM policy binding for a Dataplex Glossary as defined in a JSON or YAML file.

  See https://cloud.google.com/iam/docs/managing-policies for details of
  the policy file format and contents.
  EXAMPLESa            The following command will read an IAM policy defined in a JSON file
          `policy.json` and set it for the Dataplex Glossary `test-glossary` within
          project `test-project` in location `us-central1`:
            $ {command} test-glossary --project=test-project --location=us-central1 policy.json
            where policy.json is the relative path to the json file.
          c                 Z    t        j                  | d       t        j                  |        y )Nzto set IAM policy to.)r   AddGlossaryResourceArgr   AddArgForPolicyFile)parsers    1lib/surface/dataplex/glossaries/set_iam_policy.pyArgszSetIamPolicy.Args*   s!    ((1HI  (    z-Status code: {status_code}. {status_message}.c                     |j                   j                  j                         }t        j                  ||j                        S )N)CONCEPTSr   ParseGlossarySetIamPolicyFromFilepolicy_file)selfargsglossary_refs      r   RunzSetIamPolicy.Run/   s:     ==))//1L00d&& r   N)
__name__
__module____qualname____doc__detailed_helpstaticmethodr   gcloud_exception CatchHTTPErrorRaiseHTTPExceptionr    r   r   r	   r	      sQ      - ) ) 5445r   r	   N)r   googlecloudsdk.api_lib.dataplexr   googlecloudsdk.api_lib.utilr   r!   googlecloudsdk.callioper   #googlecloudsdk.command_lib.dataplexr   googlecloudsdk.command_lib.iamr   ReleaseTracksReleaseTrackALPHAGADefaultUniverseOnlyCommandr	   r#   r   r   <module>r/      so    C 4 F ( = 3 D%%++T->->-A-AB4<<   Cr   