
    #                     \   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  e	j$                  e	j&                  j(                  e	j&                  j*                  e	j&                  j,                         G d de	j.                               Zy)zDeletes an AlloyDB backup.    )absolute_import)division)unicode_literals)api_util)backup_operations)base)flags)log)
properties)	resources)
console_ioc                   0    e Zd ZdZdddZed        Zd Zy)Deletez1Deletes an AlloyDB backup within a given project.z{description}z_        To delete a backup, run:

          $ {command} my-backup --region=us-central1
        )DESCRIPTIONEXAMPLESc                     t         j                  j                  |        t        j                  |        t        j
                  |        y)zxSpecifies additional command flags.

    Args:
      parser: argparse.Parser, Parser object for command line inputs
    N)r   
ASYNC_FLAGAddToParserr	   	AddBackup	AddRegion)parsers    %lib/surface/alloydb/backups/delete.pyArgszDelete.Args1   s.     	OO'	OOF	OOF    c                    t        j                  | j                               }|j                  }|j                  }|j
                  j                  dt        j                  j                  j                  j                  |j                  |j                        }d}t        j                  |      sy|j!                  |j#                               }|j$                  j'                  |      }t(        j*                  j-                  |j.                  d      }	t0        j2                  j5                  d	j7                  |	j9                                      |j:                  s&t=        j>                  |	d
| j                         d       |S )zConstructs and sends request.

    Args:
      args: argparse.Namespace, An object that contains the values for the
          arguments specified in the .Args() method.

    Returns:
      ProcessHttpResponse of the request made.
    z"alloydb.projects.locations.backups)
projectsIdlocationsId	backupsIdz2All of the backup data will be lost upon deletion.)messageN)namez%alloydb.projects.locations.operations)
collectionzOperation ID: {}zDeleting backupF) r   AlloyDBClientReleaseTrackalloydb_clientalloydb_messagesresource_parserCreater   VALUEScoreproject	GetOrFailregionbackupr   PromptContinue,AlloydbProjectsLocationsBackupsDeleteRequestRelativeNameprojects_locations_backupsr   r   REGISTRYParseRelativeNamer    r
   statusPrintformatNameasync_r   Await)
selfargsclientr$   r%   
backup_refprompt_messagereqopop_refs
             r   Runz
Delete.Run<   sB    ##D$5$5$78F**N..''..,$$))11;;KK++	 / J 	= $$^<

G
G$$& H (C		2	2	9	9#	>B11
C 2 EFJJ'..v{{}=>;;f&79J9J9LeTIr   N)__name__
__module____qualname____doc__detailed_helpstaticmethodr   rB    r   r   r   r   !   s1     : 		-   r   r   N)rF   
__future__r   r   r   googlecloudsdk.api_lib.alloydbr   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.alloydbr	   googlecloudsdk.corer
   r   r   googlecloudsdk.core.consoler   ReleaseTracksr#   ALPHABETAGADeleteCommandr   rI   r   r   <module>rU      s    ! '  ' 4 < ( 4 # * ) 2 D%%++T->->-C-C%%((*9T 9*9r   