
                         n   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	Z ej                  ej                  j                          G d
 dej"                               Z ej                  ej                  j&                  ej                  j(                         G d de             Zy)zF`gcloud service-directory services remove-iam-policy-binding` command.    )absolute_import)division)unicode_literals)services)base)iam_util)resource_argsservicec                   4    e Zd ZdZddiZed        Zd Zd Zy)RemoveIamPolicyBinding*Removes IAM policy binding from a service.EXAMPLESz          To remove an IAM policy binding to a Service Directory service, run:

            $ {command} my-service --namespace=my-namespace --location=us-east1 --role=roles/owner --member=user:foo@gmail.com
          c                 Z    t        j                  | d       t        j                  |        y )Nz"to remove IAM policy binding from.)r	   AddServiceResourceArgr    AddArgsForRemoveIamPolicyBinding)parsers    Clib/surface/service_directory/services/remove_iam_policy_binding.pyArgszRemoveIamPolicyBinding.Args*   s&    ''02 --f5    c                 2   t        j                  | j                               }|j                  j                  j                         }|j                  ||j                  |j                        }t        j                  |j                         t               |S N)r   ServicesClientGetReleaseTrackCONCEPTSr
   Parser   memberroler   LogSetIamPolicyName_RESOURCE_TYPE)selfargsclientservice_refresults        r   RunzRemoveIamPolicyBinding.Run2   sm    $$T%9%9%;<F--''--/K**;TYYOF[--/@Mr   c                 6    t         j                  j                  S r   )r   ReleaseTrackGAr!   s    r   r   z&RemoveIamPolicyBinding.GetReleaseTrack;   s    r   N)	__name__
__module____qualname____doc__detailed_helpstaticmethodr   r&   r    r   r   r   r      s4    2 - 6 6 r   r   c                       e Zd ZdZd Zy)RemoveIamPolicyBindingBetar   c                 6    t         j                  j                  S r   )r   r(   BETAr*   s    r   r   z*RemoveIamPolicyBindingBeta.GetReleaseTrackC   s    !!!r   N)r+   r,   r-   r.   r   r1   r   r   r3   r3   ?   s
    2"r   r3   N)r.   
__future__r   r   r   (googlecloudsdk.api_lib.service_directoryr   googlecloudsdk.callioper   googlecloudsdk.command_lib.iamr   ,googlecloudsdk.command_lib.service_directoryr	   r    ReleaseTracksr(   r)   Commandr   ALPHAr5   r3   r1   r   r   <module>r>      s    M &  ' = ( 3 F D%%(() T\\   * B D%%++T->->-C-CD"!7 " E"r   