
    
                         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  ej$                  ej&                  j(                         G d dej*                               Zy)zList CA pools within a project.    )absolute_import)division)unicode_literals)
list_pager)base)resource_utils)common_args)response_utils)
propertiesc                   &    e Zd ZdZed        Zd Zy)ListzList CA pools within a project.

  ## EXAMPLES

  To list the CA Pools within a project:

  $ {command}


  To list the CA Pools within a project and region 'us-west1':

  $ {command} --location=us-west1
  c                 "   t        j                  dd      j                  |        t         j                  j	                  | d       | j
                  j                  d       | j
                  j                  t        j                  d             y )Nz
--locationzaLocation of the CA pools. If this is not specified, CA pools across all locations will be listed.)helpd   zv
        table(
          name.basename(),
          name.scope().segment(-3):label=LOCATION,
          tier)
        z$privateca.projects.locations.caPools)
r   ArgumentAddToParserPAGE_SIZE_FLAG
SetDefaultdisplay_info	AddFormat
AddUriFuncr   MakeGetUriFunc)parsers    #lib/surface/privateca/pools/list.pyArgsz	List.Args/   sw    MM/0 1<F0C""63/
!! #  ""%%&LMO    c           	         t        j                  d      }t        j                  d      }|j                  d      r|j                  nd}dj                  t        j                  j                  j                  j                         |      }|j                  ||j                  t        j                  |j                              }t!        j"                  |j$                  |d|j&                  d|j(                  t*        j,                        S )	Nv1location-zprojects/{}/locations/{})parentfilterorderBycaPoolspageSize)fieldlimitbatch_size_attribute
batch_sizeget_field_func)privateca_baseGetClientInstanceGetMessagesModuleIsSpecifiedr   formatr   VALUEScoreproject	GetOrFail,PrivatecaProjectsLocationsCaPoolsListRequestr"   r	   ParseSortByArgsort_byr   YieldFromListprojects_locations_caPoolsr'   	page_sizer
   GetFieldAndLogUnreachable)selfargsclientmessagesr   parent_resourcerequests          r   RunzList.Run@   s    --d3F//5H $ 0 0 <t}}#H077&&002H>O CC{{**4<<8 D :G
 ##))jj'>>%??A Ar   N)__name__
__module____qualname____doc__staticmethodr   rA    r   r   r   r      s#     O O Ar   r   N)rE   
__future__r   r   r   apitools.base.pyr    googlecloudsdk.api_lib.privatecar   r+   r   googlecloudsdk.api_lib.utilr	   googlecloudsdk.calliope$googlecloudsdk.command_lib.privatecar
   googlecloudsdk.corer   ReleaseTracksReleaseTrackGAListCommandr   rG   r   r   <module>rS      se    & &  ' ' C ; 3 ( ? * D%%(()5A4 5A *5Ar   