
                         n   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	KJr  SS
KJr  \R                   \R"                  " \R$                  R&                  \R$                  R(                  \R$                  R*                  5       " S S\R,                  5      5       5       rg)z.Deletes a backup run for a Cloud SQL instance.    )api_util)
exceptions)
operations)validate)base)flags)log)
properties)
console_ioc                   .    \ rS rSrSr\S 5       rS rSrg)Delete   z(Delete a backup of a Cloud SQL instance.c                     [         R                  R                  U 5        [        R                  " U 5        [        R
                  " U 5        U R                  R                  S5        g)zArgs is called by calliope to gather arguments for this command.

Args:
  parser: An argparse parser that you can use to add arguments that go
      on the command line after this command. Positional arguments are
      allowed.
N)r   
ASYNC_FLAGAddToParserr   AddBackupIdAddOptionalInstancedisplay_infoAddCacheUpdater)parsers    !lib/surface/sql/backups/delete.pyArgsDelete.Args%   sF     	OO'	f	f%
''-    c           	      b   [         R                  " [         R                  5      nUR                  nUR                  nSn[
        R                  " SSSS9  [        R                  " UR                  5      nU(       au  UR                  R                  UR                  UR                  S95      nUR                  R                  SUR                  UR                  R!                  S5      S   S	9nGOUR"                  c  [$        R&                  " S
5      e[(        R*                  " UR"                  5        UR                  R-                  UR"                  S[.        R0                  R2                  R4                  R6                  0SS9nUR8                  R;                  UR=                  UR4                  UR"                  [?        UR                  5      S95      nUR                  R                  SUR                  UR4                  S	9nUR@                  (       a=  URB                  RE                  URG                  UR4                  URH                  S95      $ Sn	U(       a  Sn	[B        RJ                  RM                  X5SRO                  U	5      5        [P        RR                  " UR                  U	5        g)a	  Deletes a backup of a Cloud SQL instance.

Args:
  args: argparse.Namespace, The arguments that this command was invoked
      with.

Returns:
  A dict object representing the operations resource describing the delete
  operation if the api request was successful.
Nz8The backup will be deleted. You cannot undo this action.T)messagedefaultcancel_on_no)namezsql.operations/   )	operationprojectz>[--instance | --i] is required for instance's backup deletion.r#   zsql.instances)params
collection)r#   instanceid)r#   r"   z
backup runbackupzDeleting {0})*r   	SqlClientAPI_VERSION_DEFAULT
sql_clientsql_messagesr   PromptContinuecommand_validateIsProjectLevelBackupRequestr'   backupsDeleteBackupSqlBackupsDeleteBackupRequestresource_parserCreater   splitr&   r   ArgumentErrorr   ValidateInstanceNameParser
   VALUEScorer#   	GetOrFail
backupRunsr   SqlBackupRunsDeleteRequestintasync_r   GetSqlOperationsGetRequestr"   OperationsV1Beta4WaitForOperationformatr	   DeletedResource)
selfargsclientr+   r,   operation_ref is_project_level_backup_deletionresultinstance_refr   s
             r   Run
Delete.Run3   sQ     < <=F""J&&LM J 	44TWW= % (!!..

4
4$''
4
Bf ,,33
fkk477==;Ma;P 4 m 
	&&L
 	
 ##DMM2++11
--Z..33;;EEF$ 2 l
 $$++

1
1"**#,,TWW 2 f ,,33
fkk<;O;O 4 m {{""&&

.
.#++}7N7N /  
 G'g  11>#8#8#A )r    N)	__name__
__module____qualname____firstlineno____doc__staticmethodr   rM   __static_attributes__rO   r   r   r   r      s    
 1. .H*r   r   N)rT   googlecloudsdk.api_lib.sqlr   r   r   r   googlecloudsdk.callioper   googlecloudsdk.command_lib.sqlr   r.   googlecloudsdk.corer	   r
   googlecloudsdk.core.consoler   DefaultUniverseOnlyReleaseTracksReleaseTrackGABETAALPHADeleteCommandr   rO   r   r   <module>rc      s    5 0 1 1 / ( 0 G # * 2 $++00$2C2C2I2IY*T Y* Y*r   