
    	                     ^   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
dZ ej                   ej"                  j$                         G d dej&                               Z ej                   ej"                  j*                         G d dej&                               Zy)z(Fetch the IAM policy for an application.    )absolute_import)division)unicode_literals)utils)client)base)flagsz{description}z         To get the application IAM policy for the Application `my-app` in
        in location `us-east1`, run:

          $ {command} my-app --location=us-east1
        )DESCRIPTIONEXAMPLESc                   *    e Zd ZdZeZed        Zd Zy)GetIamPolicyGAGet the IAM policy for an Apphub application.

  Returns an empty policy if the application does not have
  an existing IAM policy set.
  c                 l    t        j                  |        t        j                  j	                  |        y Nr	   AddGetIamPolicyFlagsr   URI_FLAGRemoveFromParserparsers    1lib/surface/apphub/applications/get_iam_policy.pyArgszGetIamPolicyGA.Args.   "    	v&MM""6*    c                     t        j                  t        j                  j                        }t        j                  |      }|j                  |j                               S N)release_track)app_id)	apisApplicationsClientr   ReleaseTrackGAapi_lib_utilsGetApplicationRefGetIamPolicyRelativeNameselfargsr   app_refs       r   RunzGetIamPolicyGA.Run3   sK    $$43D3D3G3GHF--d3Gg&:&:&<==r   N	__name__
__module____qualname____doc___DETAILED_HELPdetailed_helpstaticmethodr   r+    r   r   r   r   %   %    
 !-+ +>r   r   c                   *    e Zd ZdZeZed        Zd Zy)r%   r   c                 l    t        j                  |        t        j                  j	                  |        y r   r   r   s    r   r   zGetIamPolicy.ArgsB   r   r   c                     t        j                  t        j                  j                        }t        j                  |      }|j                  |j                               S r   )	r   r    r   r!   ALPHAr#   r$   r%   r&   r'   s       r   r+   zGetIamPolicy.RunG   sK    $$43D3D3J3JKF--d3Gg&:&:&<==r   Nr,   r4   r   r   r%   r%   9   r5   r   r%   N)r0   
__future__r   r   r   googlecloudsdk.api_lib.apphubr   r#   *googlecloudsdk.api_lib.apphub.applicationsr   r   googlecloudsdk.callioper   !googlecloudsdk.command_lib.apphubr	   r1   ReleaseTracksr!   r"   ListCommandr   r9   r%   r4   r   r   <module>rA      s    / &  ' @ E ( 3 # D%%(()>T%% > *>& D%%++,>4## > ->r   