
    I                         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Z G d d	ej                        Z G d
 dej                        Z G d dej                        Zd ZddZy)z@Flags and helpers for the compute target-https-proxies commands.    )absolute_import)division)unicode_literals)
completers)flagsz    table(
      name,
      sslCertificates.map().basename().list():label=SSL_CERTIFICATES,
      urlMap.basename(),
      region.basename(),
      certificateMap.basename()
    )c                        e Zd Z fdZ xZS )!GlobalTargetHttpsProxiesCompleterc                 2    t        t        | 
  dddd| y )Ncompute.targetHttpsProxiesz0compute target-https-proxies list --global --uri
collectionlist_command )superr	   __init__selfkwargs	__class__s     Dlib/googlecloudsdk/command_lib/compute/target_https_proxies/flags.pyr   z*GlobalTargetHttpsProxiesCompleter.__init__&   s(    	
+T; /G     __name__
__module____qualname__r   __classcell__r   s   @r   r	   r	   #        r   r	   c                        e Zd Z fdZ xZS )!RegionTargetHttpsProxiesCompleterc                 2    t        t        | 
  dddd| y )N compute.regionTargetHttpsProxiesz9compute target-https-proxies list --filter=region:* --urir   r   )r   r    r   r   s     r   r   z*RegionTargetHttpsProxiesCompleter.__init__0   s(    	
+T; 5P r   r   r   s   @r   r    r    -   r   r   r    c                        e Zd Z fdZ xZS )TargetHttpsProxiesCompleterc                 D    t        t        | 
  ddt        t        gi| y )Nr   r   )r   r$   r   r	   r    r   s     r   r   z$TargetHttpsProxiesCompleter.__init__9   s-    	
%t5 -/P
 	r   r   r   s   @r   r$   r$   7   s     r   r$   c                 .    | j                  dd|d       y)zAdds the proxy bind argument.z--proxy-bind
store_truez      This flag applies when the load_balancing_scheme of the associated
      backend service is INTERNAL_SELF_MANAGED. When specified, the envoy binds
      to the forwarding rule's IP address and port. By default, this flag is
      off.
      )actiondefaulthelpN)add_argument)parserr)   s     r   AddProxyBindr-   A   s#    
	  	r   c           
      `    t        j                  dt        |d| ddt         j                        S )Nztarget HTTPS proxyztarget HTTPS proxiesr   r"   )resource_name	completerpluralcustom_pluralrequiredglobal_collectionregional_collectionregion_explanation)compute_flagsResourceArgumentr$   REGION_PROPERTY_EXPLANATION)r3   r1   s     r   TargetHttpsProxyArgumentr:   O   s5    		'	'(+*4<&BB
D Dr   N)TF)__doc__
__future__r   r   r   "googlecloudsdk.command_lib.computer   compute_completersr   r7   googlecloudsdk.command_lib.utilDEFAULT_LIST_FORMATListCommandCompleterr	   r    MultiResourceCompleterr$   r-   r:   r   r   r   <module>rC      sh    G &  ' O E 6	 (:(O(O (:(O(O *"C"C 	Dr   