
                            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 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j0                   ej2                  ej4                  j6                  ej4                  j8                         G d dej:                                      Zy)z#Command for deleting a worker-pool.    )absolute_import)division)unicode_literals)apis)base)
exceptions)flags)pretty_print)resource_args)deletion)worker_pools_operations)concept_parsers)presentation_specs)log)
console_ioc                   @    e Zd ZdZdddZed        Zed        Zd Zy)	DeleteDelete a worker-pool.z"          {description}
          z[          To delete a worker-pool:

              $ {command} <worker-pool-name>
          )DESCRIPTIONEXAMPLESc                     t        j                  dt        j                         ddd      }t	        j
                  |g      j                  |        t        j                  |        y )NWORKER_POOLzWorkerPool to delete.TF)requiredprefixes)	r   ResourcePresentationSpecr   GetV2WorkerPoolResourceSpecr   ConceptParserAddToParserr	   AddAsyncFlag)parserworker_pool_presentations     &lib/surface/run/worker_pools/delete.py
CommonArgszDelete.CommonArgs3   s]    1JJ113  !!#;"<=II 
v    c                 .    t         j                  |        y )N)r   r#   )r    s    r"   ArgszDelete.ArgsA   s    
fr$   c                 Z   fd}j                   j                  j                         }t        j                  |       t        j                  dj                  |j                        dd       t        j                  dd|      }t        j                  |      fd	}t        j                  |j                  |j                          j                   r/t#        j$                  d
j                  |j                               yt'        j(                  |j                  d       y)r   c                 p    j                   j                  j                         j                  }|dz   | z   S )N-)CONCEPTSworker_poolParselocationsId)endpointregionargss     r"   DeriveRegionalEndpointz*Delete.Run.<locals>.DeriveRegionalEndpointH   s0    }}((..0<<fc\H$$r$   z+WorkerPool [{worker_pool}] will be deleted.)r+   T)messagethrow_if_unattendedcancel_on_norunv2)address_override_funcc                     j                  |       }|s.t        j                  dj                  | j                              y )NzCannot find worker pool [{}])DeleteWorkerPoolr   ArgumentErrorformatworkerPoolsId)worker_pool_refresponseworker_pools_clients     r"   DeleteWithExistenceCheckz,Delete.Run.<locals>.DeleteWithExistenceCheck[   sB    $55oFh&&*11/2O2OP
 	
 r$   z"Worker pool [{}] is being deleted.zworker poolN)r*   r+   r,   r	   ValidateResourcer   PromptContinuer;   r<   r   GetGapicClientInstancer   WorkerPoolsOperationsr   r   GetWorkerPoolasync_r
   Successr   DeletedResource)selfr0   r1   r=   
run_clientr@   r?   s    `    @r"   Runz
Delete.RunE   s   % mm//557O	?+=DD'55 E 
 ! ,,t+AJ 2GG
 OO)) 	 {{
.
5
5++ 
/77Gr$   N)	__name__
__module____qualname____doc__detailed_helpstaticmethodr#   r&   rK    r$   r"   r   r   #   sF     		-    ,Hr$   r   N)rO   
__future__r   r   r   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper   googlecloudsdk.command_lib.runr   r	   r
   r   !googlecloudsdk.command_lib.run.v2r   r   (googlecloudsdk.command_lib.util.conceptsr   r   googlecloudsdk.corer   googlecloudsdk.core.consoler   UniverseCompatibleReleaseTracksReleaseTrackALPHABETACommandr   rR   r$   r"   <module>ra      s    * &  ' , ( 5 0 7 8 6 E D G # 2 D%%++T->->-C-CDLHT\\ LH E LHr$   