
                             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r " S	 S
\	R                  5      rS rS rS rS rSS jrg)z?Flags and helpers for the compute network-attachments commands.    )absolute_import)division)unicode_literals)arg_parsers)
completers)flagszQ    table(
      name,
      region.basename(),
      connection_preference
    )c                   (   ^  \ rS rSrU 4S jrSrU =r$ )NetworkAttachmentsCompleter!   c                 4   > [         [        U ]
  " SSSS.UD6  g )Ncompute.networkAttachmentsz&compute network-attachments list --uri)
collectionlist_command )superr
   __init__)selfkwargs	__class__s     Clib/googlecloudsdk/command_lib/compute/network_attachments/flags.pyr   $NetworkAttachmentsCompleter.__init__#   s(    	
%t5 /=     r   )__name__
__module____qualname____firstlineno__r   __static_attributes____classcell__)r   s   @r   r
   r
   !   s     r   r
   c                 &    U R                  SSSS9  g)z#Add support for --description flag.z--descriptionNz<An optional, textual description for the network attachment.)defaulthelpadd_argumentparsers    r   AddDescriptionr&   *   s    I  Kr   c                 0    U R                  SSS/S SSS9  g)z-Add support for --connection-preference flag.z--connection-preferenceACCEPT_AUTOMATICACCEPT_MANUALc                 B    U R                  SS5      R                  5       $ )N-_)replaceupper)xs    r   <lambda>)AddConnectionPreference.<locals>.<lambda>7   s    QYYsC(..0r   a        The connection preference of network attachment.
      The value can be set to ACCEPT_AUTOMATIC or ACCEPT_MANUAL.
      An ACCEPT_AUTOMATIC network attachment is one that
      always accepts the connection from producer NIC.
      An ACCEPT_MANUAL network attachment is one that
      requires an explicit addition of the producer project id
      or project number to the producer accept list.
      )choicestyper    r!   Nr"   r$   s    r   AddConnectionPreferencer4   2   s+    !?30 
  r   c                 P    U R                  S[        R                  " 5       SSSS9  g)z,Add support for --producer-reject-list flag.z--producer-reject-listREJECT_LISTNzQ      Projects that are not allowed to connect to this network attachment.
      r3   metavarr    r!   r#   r   ArgListr$   s    r   AddProducerRejectListr;   D   /     
  r   c                 P    U R                  S[        R                  " 5       SSSS9  g)z,Add support for --producer-accept-list flag.z--producer-accept-listACCEPT_LISTNzM      Projects that are allowed to connect to this network attachment.
      r7   r9   r$   s    r   AddProducerAcceptListr?   P   r<   r   c           	      X    [         R                  " S[        UU S[         R                  S9$ )Nznetwork attachmentr   )resource_name	completerpluralrequiredregional_collectionregion_explanation)compute_flagsResourceArgumentr
   REGION_PROPERTY_EXPLANATION)rD   rC   s     r   NetworkAttachmentArgumentrJ   \   s/    		'	'(+6&BB
D Dr   N)TF)__doc__
__future__r   r   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer   compute_completersr   rG   DEFAULT_LIST_FORMATListCommandCompleterr
   r&   r4   r;   r?   rJ   r   r   r   <module>rR      sS    F &  ' / O E	 "4"I"I K$		Dr   