
    j                         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	lmZ dd
lmZ  G d dej                        Zy)z&Command for deleting backend services.    )absolute_import)division)unicode_literals)base_classes)utils)client)base)backend_services_utils)flagsc                   >    e Zd ZdZej
                  Zed        Zd Z	y)DeletezRDelete backend services.

    *{command}* deletes one or more backend services.
  c                 t    | j                   j                  |d       |j                  j                  d        y )Ndelete)operation_type)_BACKEND_SERVICE_ARGAddArgumentdisplay_infoAddCacheUpdater)clsparsers     .lib/surface/compute/backend_services/delete.pyArgszDelete.Args&   s/    (((I
''-    c                    t        j                  | j                               }| j                  j	                  ||j
                  t        j                               }t        j                  |       g }|D ]D  }t        j                  ||j                        }|j                  |j                  d             F g }|j                  j                  ||      }|rt        j                  |       |S )N)default_scope)compute_clientT)only_generate_request)r   ComputeApiHolderReleaseTrackr   ResolveAsResource	resourcesr
   GetDefaultScoper   PromptForDeletionr   BackendServiceextendr   MakeRequestsRaiseToolException)	selfargsholderrefsrequestsrefbackend_serviceerrorsr!   s	            r   Runz
Delete.Run+   s    **4+<+<+>?F$$66,<<> 7 @D 
D!H--
fmm-oooo,,4,HI 
 F**8V<Iv&r   N)
__name__
__module____qualname____doc__r   )GLOBAL_REGIONAL_MULTI_BACKEND_SERVICE_ARGr   classmethodr   r0    r   r   r   r      s,    
 HH. .r   r   N)r4   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   /googlecloudsdk.api_lib.compute.backend_servicesr   googlecloudsdk.callioper	   3googlecloudsdk.command_lib.compute.backend_servicesr
   r   DeleteCommandr   r7   r   r   <module>r>      s7     - &  ' 7 0 B ( V E T  r   