
                            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&                         G d dej(                               Z ej"                  ej$                  j,                  ej$                  j.                         G d de             Zy)z2Command to list persistent resources in Vertex AI.    )absolute_import)division)unicode_literals)client)base)	constants)endpoint_util)flags)region_util)persistent_resource_util)
validationc                   >    e Zd ZdZej
                  Zed        Zd Z	y)ListGALists the active persistent resources.

  ## EXAMPLES

  To list the persistent resources of project ``example'' in region
  ``us-central1'', run:

    $ {command} --project=example --region=us-central1
  c                     t        j                  |dt        j                  t        j
                               t        j                  |t        j                  t        j                  | j                            y)zMethod called by Calliope to set up arguments for this command.

    Args:
      parser: A argparse.Parser to register accepted arguments in command input.
    zto list persistent resources)prompt_func)
collectionapi_versionN)r
   AddRegionResourceArgr   GetPromptForRegionFuncr   SUPPORTED_TRAINING_REGIONSAddUriFlagsr   PERSISTENT_RESOURCE_COLLECTIONAI_PLATFORM_API_VERSION_api_version)clsparsers     +lib/surface/ai/persistent_resources/list.pyArgszListGA.Args,   s`     
&660023
 
+JJ55c6F6FGI    c                    |j                   j                  j                         }|j                         d   }t	        j
                  |       t        j                  | j                  |      5  t        j                  | j                        j                  |j                               }|D cg c]&  }|j                  |j                  j                  |( }}|cddd       S c c}w # 1 sw Y   yxY w)zExecutes the list command.

    Args:
      args: an argparse.Namespace, it contains all arguments that this command
        was invoked with.

    Returns:
      The list of resources
    locationsId)versionregion)r#   )r$   N)CONCEPTSr$   ParseAsDictr   ValidateRegionr	   AiplatformEndpointOverridesr   r   PersistentResourcesClientListRelativeNameresourceRuntimeSpecraySpec)selfargs
region_refr$   responseresources         r   Runz
ListGA.Run=   s     %%++-J /Ff%		2	2!!&
211##%%)T,,. &* &0  ,4 ;8x''/''//7 8h ; 
2 
2;
2 
2s   .AC.1+C)C.)C..C7N)
__name__
__module____qualname____doc__r   
GA_VERSIONr   classmethodr   r4    r    r   r   r      s-     %%,I I r    r   c                   (    e Zd ZdZej
                  Zy)	ListPreGAr   N)r5   r6   r7   r8   r   BETA_VERSIONr   r;   r    r   r=   r=   Y   s     '',r    r=   N)r8   
__future__r   r   r   .googlecloudsdk.api_lib.ai.persistent_resourcesr   googlecloudsdk.callioper   googlecloudsdk.command_lib.air   r	   r
   r   2googlecloudsdk.command_lib.ai.persistent_resourcesr   r   ReleaseTracksReleaseTrackGAListCommandr   ALPHABETAr=   r;   r    r   <module>rJ      s    9 &  ' A ( 3 7 / 5 W I D%%(()6T 6 *6r D%%++T->->-C-CD
( 
( E
(r    