
    
                         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
\	R                   5      rS rg)z<Wrapper around serverless_operations DeleteFoo for surfaces.    )absolute_import)division)unicode_literals)
exceptions)waiter)
conditions)progress_trackerc                   6    \ rS rSrSrS rS rS rS rS r	Sr
g	)
DeletionPoller   z!Polls for deletion of a resource.c                     Xl         SU l        g)z%Supply getter as the resource getter.N_getter_ret)selfgetters     1lib/googlecloudsdk/command_lib/run/v2/deletion.py__init__DeletionPoller.__init__   s    LDI    c                     Uc  g[         R                  " U R                  5      nUS L =(       d    [         R                  " U5      $ )NT)r   GetTerminalConditionr   IsConditionFailed)r   objterminal_conditions      r   IsDoneDeletionPoller.IsDone$   sA    
{#88C% )E)E* r   c                      U R                  U5      U l        U R                  $ ! [        R                   a    S U l         U R                  $ f = fN)r   r   api_exceptionsHttpNotFoundError)r   refs     r   PollDeletionPoller.Poll,   sK    ,,s#di 99 ++ di99s   $ AAc                     U R                   (       d  g[        R                  " U R                   5      nU(       a0  [        R                  " U5      (       d  UR                  =(       d    S$ g)N )r   r   r   IsConditionReadymessage)r   r   s     r   
GetMessageDeletionPoller.GetMessage3   sO    99#88C*"="=# #  ''-2-r   c                     U$ r    )r   r   s     r   	GetResultDeletionPoller.GetResult=   s    Jr   r   N)__name__
__module____qualname____firstlineno____doc__r   r   r#   r)   r-   __static_attributes__r,   r   r   r   r      s    )
r   r   c                 F   U(       a	  U" U 5        g[        U5      n[        R                  " SR                  U R	                  5       5      UR
                  S9   U" U 5        [        R                  " X@5      nU(       a  UR                  5       (       aB  [        R                  " SR                  U R	                  5       UR                  5       5      5      e[        R                  " SR                  U R	                  5       5      5      e SSS5        g! , (       d  f       g= f)zFDeletes a resource for a surface, including a pretty progress tracker.NzDeleting [{}])r(   detail_message_callbackzFailed to delete [{}]: {}.zFailed to delete [{}].)
r   r	   ProgressTrackerformatNamer)   r   PollUntilDoneserverless_exceptionsDeletionFailedError)r"   r   deleterasync_pollerress         r   DeleterA   A   s    CL
&!&''$$SXXZ0$// CL


v
+C
					#77(//
F<M<M<OP
 	
 $77$++CHHJ7
 	
   s   B0D
D N)r3   
__future__r   r   r   apitools.base.pyr   r    googlecloudsdk.api_lib.utilr   googlecloudsdk.command_lib.runr;   !googlecloudsdk.command_lib.run.v2r   googlecloudsdk.core.consoler	   OperationPollerr   rA   r,   r   r   <module>rI      s;    C &  ' 9 . N 8 8"V++ "J
r   