
                         f   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 dd	lmZ  e	j"                  e	j$                  j&                  e	j$                  j(                  e	j$                  j*                         G d de	j,                               Zdddde_        y)z(Command for deleting instance templates.    )absolute_import)division)unicode_literals)base_classes)utils)base)
completers)flags)scopec                   F    e Zd ZdZed        Zed        Zed        Zd Z	y)DeleteGAz9Delete Compute Engine virtual machine instance templates.c                     |j                         dk(  r| j                  j                  S | j                  j                  S Nzcompute.instanceTemplates)
Collectionapitools_clientinstanceTemplatesregionInstanceTemplatesclientrefs     0lib/surface/compute/instance_templates/delete.pyGetServiceClientzDeleteGA.GetServiceClient#   s6    
~~66##555##;;;    c                     |j                         dk(  r| j                  j                  S | j                  j                  S r   )r   messages%ComputeInstanceTemplatesDeleteRequest+ComputeRegionInstanceTemplatesDeleteRequestr   s     r   GetRequestMessagezDeleteGA.GetRequestMessage*   s2    
~~66__BBB__HHHr   c                     t        j                  dd      | _        | j                  j                  |d       |j                  j                  t        j                         y )NT)pluralinclude_regionaldelete)operation_type)r
   MakeInstanceTemplateArgInstanceTemplateArgAddArgumentdisplay_infoAddCacheUpdaterr	   InstanceTemplatesCompleter)clsparsers     r   ArgszDeleteGA.Args1   sM    #;;d,C''x'H
''
(M(MNr   c                    t        j                  | j                               }|j                  }| j                  j                  ||j                  t        j                  |      t        j                  j                        }t        j                  |       g }|D ]N  }| j                  ||      }| j                  ||      }|j!                  |d |di |j#                         f       P |j%                  |      S )N)scope_listerdefault_scopeDelete )r   ComputeApiHolderReleaseTrackr   r%   ResolveAsResource	resourcescompute_flagsGetDefaultScopeListercompute_scope	ScopeEnumGLOBALr   PromptForDeletionr   r   appendAsDictMakeRequests)	selfargsholderr   instance_template_refsrequestsr   service_clientrequest_messages	            r   RunzDeleteGA.Run8   s    **4+<+<+>?F]]F!55GG"88@#--44	 H 6 
23H%,,VS9n..vs;ooo8_%Dszz|%D
EG & x((r   N)
__name__
__module____qualname____doc__staticmethodr   r   classmethodr,   rF   r1   r   r   r   r      sK     B< < I I O O)r   r   z8Delete Compute Engine virtual machine instance templateszk        *{command}* deletes one or more Compute Engine virtual machine
        instance templates.
        zy        To delete the instance template named 'INSTANCE-TEMPLATE', run:

          $ {command} INSTANCE-TEMPLATE
        )briefDESCRIPTIONEXAMPLESN)rJ   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer	   r
   r6   r   r8   5googlecloudsdk.command_lib.compute.instance_templatesReleaseTracksr3   GABETAALPHADeleteCommandr   detailed_helpr1   r   r   <module>r[      s    / &  ' 7 0 ( 9 E E G D%%(($*;*;*@*@%%++-+)t!! +)-+)` 	C	
	 r   