
                         "   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r
\
S-   r\R                  " \R                  R                  \R                  R                  \R                  R                   5       " S	 S
\R"                  5      5       rg)z#services api-keys undelete command.    )apikeys)services_util)base)common_flags)logzgcloud services operations zwait {0}c                   .    \ rS rSrSr\S 5       rS rSrg)Undelete   a$  Undelete an API key.

API Keys that are deleted will be retained in the system for 30 days. If a
key is still within this retention window, it can be undeleted with this
command.

## EXAMPLES
UnDelete an API Key (Key or key-string should be specified):

To undelete with key `1234`, run:

    $ {command} 1234

To undelete with `1234` in project `myproject` using the fully qualified API
key name, run:

    $ {command} projects/myproject/locations/global/keys/1234

To undelete using a Key-string, run:

  $ {command} --key-string='my-key-string'
c                 n    [         R                  " U 5        [        R                  R	                  U 5        g )N)r   add_key_undelete_argsr   
ASYNC_FLAGAddToParser)parsers    )lib/surface/services/api_keys/undelete.pyArgsUndelete.Args7   s$     &&v.OO'    c                 H   [         R                  " 5       nUR                  nUR                  S5      (       a4  UR                  R
                  R                  5       nUR                  5       nUR                  S5      (       a@  UR                  UR                  S9nUR                  R                  U5      nUR                  nUR                  WS9nUR                  R                  U5      n	U	R                   (       d  UR"                  (       aO  [$        R'                  U	R                  5      n
[(        R*                  R-                  SR'                  U
5      5        U	$ [.        R0                  " U	R                  [         R2                  5      n	[.        R4                  " U	5        U	$ )zRun command.

Args:
  args: an argparse namespace. All the arguments that were provided to this
    command invocation.

Returns:
  None
key
key_string)	keyString)namezcAsynchronous operation is in progress... Use the following command to wait for its completion:
 {0})r   GetClientInstanceMESSAGES_MODULEIsSpecifiedCONCEPTSr   ParseRelativeNameApikeysKeysLookupKeyRequestr   keys	LookupKeyr   +ApikeysProjectsLocationsKeysUndeleteRequestprojects_locations_keysr	   doneasync_OP_WAIT_CMDformatr   statusPrintr   WaitOperationGetOperationPrintOperationWithResponse)selfargsclientmessageskey_refkey_namelookup_requestresponserequestopcmds              r   RunUndelete.Run=   sI    &&(F%%H!!'')g%%'h%%;;OO < n &&~6hhBB C G 
	'	'	0	0	9B77	  )

 --3VC[	: 	&&rww0D0DEb,,R0Ir    N)	__name__
__module____qualname____firstlineno____doc__staticmethodr   r8   __static_attributes__r:   r   r   r	   r	      s     . ( (
&r   r	   N)r?   googlecloudsdk.api_lib.servicesr   r   googlecloudsdk.callioper   #googlecloudsdk.command_lib.servicesr   googlecloudsdk.corer   OP_BASE_CMDr&   ReleaseTracksReleaseTrackALPHABETAGARestoreCommandr	   r:   r   r   <module>rM      s    * 4 9 ( < #+J& T..33T5F5F5I5IDt"" DDr   