
                             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 Z
d Zd	 Zd
 Z G d dej                        Zy)z<Common flag setup and parsing for Cloud API Gateway surface.    )absolute_import)division)unicode_literals)
completers)labels_utilc                 *    | j                  dd       y)z(Adds the display name arg to the parser.z--display-namezB      Human readable name which can optionally be supplied.
      helpNadd_argumentparsers    :lib/googlecloudsdk/command_lib/api_gateway/common_flags.pyAddDisplayNameArgr      s    
      c                 *    | j                  dd       y)zAdds the managed service flag.z--managed-servicez?      The name of a pre-existing Google Managed Service.
      r	   Nr   r   s    r   AddManagedServiceFlagr   #   s    
  r   c                 *    | j                  dd       y)z+Adds the backend auth service account flag.z--backend-auth-service-accountzq      Service account which will be used to sign tokens for backends with       authentication configured.
      r	   Nr   r   s    r    AddBackendAuthServiceAccountFlagr   ,   s    &
  r   c                 p     G d dt               }| r$ |       }| |_        t        j                  ||      } | S )z-Parses labels into a specific message format.c                       e Zd Zy)!ProcessLabelsFlag.<locals>.ObjectN)__name__
__module____qualname__ r   r   Objectr   9   s    r   r   )objectlabelsr   ParseCreateArgs)r   messager   
labels_objs       r   ProcessLabelsFlagr#   6   s?    	v 	 JJ((F 
-r   c                        e Zd Z fdZ xZS )GatewayIamRolesCompleterc                 2    t        t        | 
  dddd| y )Nz&apigateway.projects.locations.gatewaysgateway)resource_collectionresource_destr   )superr%   __init__)selfkwargs	__class__s     r   r+   z!GatewayIamRolesCompleter.__init__H   s(    	
"D2 D r   )r   r   r   r+   __classcell__)r.   s   @r   r%   r%   F   s     r   r%   N)__doc__
__future__r   r   r   googlecloudsdk.command_lib.iamr   iam_completers$googlecloudsdk.command_lib.util.argsr   r   r   r   r#   IamRolesCompleterr%   r   r   r   <module>r6      s@     C &  ' G < ~?? r   