
    
                     t    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\R                  5      rS rg	)
z<Wrapper around serverless_operations DeleteFoo for surfaces.    )
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.GetMessage0   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   Deleter>   >   s    CL
&!&''$$SXXZ0$// CL


v
+C
					#77(//
F<M<M<OP
 	
 $77$++CHHJ7
 	
   s   B0D
D N)r0   apitools.base.pyr   r   googlecloudsdk.api_lib.utilr   googlecloudsdk.command_lib.runr8   !googlecloudsdk.command_lib.run.v2r   googlecloudsdk.core.consoler   OperationPollerr   r>   r)   r   r   <module>rE      s4    C : . N 8 8"V++ "J
r   