
                             S r SSKJr  SSKJr  SSKJr  SSKrSSKJr  SSKJ	r	  SSKJ
r
  SS	KJr  S
 r " S S\	R                  5      rg)zUtilities for Locations.    )absolute_import)division)unicode_literalsN)
list_pager)base)
flag_utils)utilc                 D    [         R                  " U 5      n[        U5      $ )zvCreates Client.

Args:
  release_track: release_track value, can be ALPHA, BETA, GA

Returns:
  The versioned client.
)r   GetApiVersionLocation)release_trackapi_versions     3lib/googlecloudsdk/api_lib/recommender/locations.pyCreateClientr      s     ((7+	+	    c                   &    \ rS rSrSr  SS jrSrg)r   *   z&Base Location client for all versions.Nc           	         / / / pn/ n
U(       aZ  U R                   R                  U l        U R                  R	                  SU-   S9n[
        R                  " U R                  USUUSS9nU(       aZ  U R                   R                  U l        U R                  R                  SU-   S9n[
        R                  " U R                  USUUSS9nU(       aw  U R                   R                  U l        U R                  R                  S[        [        R                  " U5      5      -   S9n[
        R                  " U R                  USUUSS9n	U(       aZ  U R                   R                  U l        U R                  R                  SU-   S9n[
        R                  " U R                  USUUSS9n
[         R"                  " UUU	U
5      $ )	a  List Locations.

Args:
  page_size: int, The number of items to retrieve per request.
  project: string, The project name to retrieve locations for.
  folder: string, The folder name to retrieve locations for.
  organization: string, The organization name to retrieve locations for.
  billing_account: string, The billing project to retrieve locations for.
  limit: int, The maximum number of records to yield.

Returns:
  The list of Locations.
zfolders/)namepageSize	locations)batch_size_attribute
batch_sizelimitfieldzorganizations/z	projects/zbilling-accounts/)_clientfolders_locations_service	_messages&RecommenderFoldersLocationsListRequestr   YieldFromListorganizations_locations,RecommenderOrganizationsLocationsListRequestprojects_locations'RecommenderProjectsLocationsListRequeststrr	   GetProjectNumberbillingAccounts_locations.RecommenderBillingAccountsLocationsListRequest	itertoolschain)self	page_sizeprojectfolderorganizationbilling_accountr   folder_locationsorganization_locationsproject_locationsbilling_account_locationsrequests               r   ListLocation.List-   s     CEb".? "ll44dmEEF" F g $11
--
) ll::dmKK,. L g  *77
--
)  ll55dmFFS!6!6w!?@@ G g %22
--
) ll<<dmMM"_4 N g #-":":
--
)# ??!	 r   )r   )NNNNN)__name__
__module____qualname____firstlineno____doc__r7   __static_attributes__ r   r   r   r   *   s    .15:>Mr   r   )r=   
__future__r   r   r   r*   apitools.base.pyr   "googlecloudsdk.api_lib.recommenderr   r   #googlecloudsdk.command_lib.projectsr	   r   
ClientBaser   r?   r   r   <module>rE      s9     &  '  ' 3 9 4
Pt Pr   