
                            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SK
Jr  SS	KJr  SS
KJr  SSKJr  \R$                  " SS9r " S S\	R(                  5      r\R,                  " \R.                  R0                  \R.                  R2                  \R.                  R4                  5       " S S\R6                  5      5       rg)zCommand to delete VPN Gateways.    )absolute_import)division)unicode_literals)base_classes)utils)poller)vpn_gateways_utils)waiter)base)flagsT)pluralc                       \ rS rSrS rSrg)DeleteBatchPoller    c                     g )N )selfoperation_batchs     *lib/surface/compute/vpn_gateways/delete.py	GetResultDeleteBatchPoller.GetResult"   s         r   N)__name__
__module____qualname____firstlineno__r   __static_attributes__r   r   r   r   r       s    r   r   c                   6    \ rS rSrSrSS0r\S 5       rS rSr	g)	Delete(   aH  Delete Compute Engine Highly Available VPN Gateways.

*{command}* is used to delete one or more Compute Engine Highly
Available VPN Gateways. VPN Gateways can only be deleted when no VPN tunnels
refer to them.

Highly Available VPN Gateway provides a means to create a VPN solution with a
higher availability SLA compared to Classic Target VPN Gateway.
Highly Available VPN gateways are simply referred to as VPN gateways in the
API documentation and gcloud commands.
A VPN Gateway can reference one or more VPN tunnels that connect it to
external VPN gateways or Cloud VPN Gateways.
EXAMPLESzb          To delete a VPN gateway, run:

              $ {command} my-gateway --region=us-central1c                 ~    [         R                  U SS9  U R                  R                  [        R
                  5        g )Ndelete)operation_type)_VPN_GATEWAY_ARGAddArgumentdisplay_infoAddCacheUpdaterr   VpnGatewaysCompleter)parsers    r   ArgsDelete.ArgsA   s/       A
''(B(BCr   c                 2   [         R                  " U R                  5       5      n[        R                  " U5      nUR
                  R                  n[        R                  XR                  5      n[        R                  " U5        U Vs/ s H  ocR                  U5      PM     nnSR                  [        U5      S:  a  SOS5      n[        UR
                  UR                   5      n	["        R$                  " U	[&        R(                  " U5      U5      $ s  snf )z+Issues the request to delete a VPN Gateway.zDeleting VPN {}   GatewaysGateway)r   ComputeApiHolderReleaseTrackr	   VpnGatewayHelperclientapitools_clientr%   ResolveAsResource	resourcesr   PromptForDeletionr   formatlenr   vpnGatewaysr
   WaitForr   OperationBatch)
r   argsholderhelperr4   refsrefoperation_refswait_messageoperation_pollers
             r   Run
Delete.RunF   s    **4+<+<+>?F008F]]**F--d4D4DED	D!489DSmmC(DN9$++N+a/iBL(8J8JK>>* //?O O	 :s   
Dr   N)
r   r   r   r   __doc__detailed_helpstaticmethodr+   rF   r   r   r   r   r   r   (   s4     =- D DOr   r   N)rH   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   )googlecloudsdk.api_lib.compute.operationsr   +googlecloudsdk.api_lib.compute.vpn_gatewaysr	   googlecloudsdk.api_lib.utilr
   googlecloudsdk.callioper   /googlecloudsdk.command_lib.compute.vpn_gatewaysr   GetVpnGatewayArgumentr%   BatchPollerr   ReleaseTracksr2   ALPHABETAGADeleteCommandr   r   r   r   <module>rY      s    & &  ' 7 0 < J . ( A..d; **  D%%++T->->-C-C%%((*)OT )O*)Or   