
    4                        S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  SSKJr  SS	KJr  SS
KJr  \R                   " \R"                  R$                  \R"                  R&                  5       " S S\R(                  5      5       rg)z,Cloud Pub/Sub topics set-iam-policy command.    )absolute_import)division)unicode_literals)topics)base)iam_util)flags)resource_args)logc                   T    \ rS rSrSr\R                  " SS5      r\S 5       r	S r
Srg)	SetIamPolicy   z-Set the IAM policy for a Cloud Pub/Sub Topic.topiczmy-topicc                 ^    [         R                  " U S5        [        R                  " U 5        g )Nzto set an IAM policy on.)r
   AddTopicResourceArgr	   AddIamPolicyFileFlag)parsers    +lib/surface/pubsub/topics/set_iam_policy.pyArgsSetIamPolicy.Args#   s!    %%f.HI	v&    c                 |   [         R                  " 5       nUR                  nUR                  R                  R                  5       n[        R                  " UR                  UR                  5      nUR                  XES9n[        R                  R                  SR                  UR                  5       5      5        U$ )N)policyz"Updated IAM policy for topic [{}].)r   TopicsClientmessagesCONCEPTSr   Parser   ParsePolicyFilepolicy_filePolicyr   r   statusPrintformatName)selfargsclientr   	topic_refr   responses          r   RunSetIamPolicy.Run(   s      "FH##))+I%%d&6&6HF""9"<HJJ9@@ Or    N)__name__
__module____qualname____firstlineno____doc__r   GetDetailedHelpForSetIamPolicydetailed_helpstaticmethodr   r*   __static_attributes__r,   r   r   r   r      s.    599':N-' '
r   r   N)r1   
__future__r   r   r   googlecloudsdk.api_lib.pubsubr   googlecloudsdk.callioper   googlecloudsdk.command_lib.iamr   !googlecloudsdk.command_lib.pubsubr	   r
   googlecloudsdk.corer   ReleaseTracksReleaseTrackGABETACommandr   r,   r   r   <module>rA      sj    3 &  ' 0 ( 3 3 ; # D%%(($*;*;*@*@A4<<  Br   