
                         ~   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SK	J
r
  SSK	Jr  \R                  " \R                  R                  5       " S	 S
\R                  5      5       r\R                  " \R                  R"                  \R                  R$                  5       " S S\R                  5      5       rg)z>Command to list all Project IDs linked with a billing account.    )absolute_import)division)unicode_literals)billing_client)base)flags)utilsc                   >    \ rS rSrSr\S 5       r\S 5       rS rSr	g)	ListAlpha   a  List all active projects associated with the specified billing account.

*{command}* ACCOUNT_ID -- lists all active projects, for the specified
billing account id.

## EXAMPLES

To list projects linked to billing account `0X0X0X-0X0X0X-0X0X0X`, run:

    $ {command} 0X0X0X-0X0X0X-0X0X0X

## API REFERENCE

This command uses the *cloudbilling/v1* API. The full documentation for this
API can be found at: https://cloud.google.com/billing/v1/getting-started
c                 v   U R                  SS9n[        R                  " 5       R                  U5        [        R                  " SS9R                  U5        [
        R                  R                  U 5        U R                  R                  S5        U R                  R                  [        R                  5        g )NT)requiredF)
positional
          table(
            projectId,
            billingAccountName.basename():label=BILLING_ACCOUNT_ID,
            billingEnabled
          )
    )add_mutually_exclusive_groupr   GetOldAccountIdArgumentAddToParserGetAccountIdArgumentr   URI_FLAGRemoveFromParserdisplay_info	AddFormatAddCacheUpdaterBillingAccountsCompleter)parseraccount_args_groups     $lib/surface/billing/projects/list.pyArgsListAlpha.Args.   s    <<d<K	!!#//0BC	%0<<=OPMM""6*
!! # 	 ''(F(FG    c                      gzNo resource URIs.N r#   r    r   GetUriCacheUpdateOpListAlpha.GetUriCacheUpdateOp>        r    c                     [         R                  " 5       n[        R                  " UR                  =(       d    UR
                  5      nUR                  X1R                  S9$ zRun the list command.)limit)r   ProjectsClientr	   ParseAccountidbilling_accountListr)   selfargsclientaccount_refs       r   RunListAlpha.RunC   sD    **,F$$TWW%D0D0DEK;;{**;55r    r#   N
__name__
__module____qualname____firstlineno____doc__staticmethodr   r$   r4   __static_attributes__r#   r    r   r   r      s6    " H H  6r    r   c                   >    \ rS rSrSr\S 5       r\S 5       rS rSr	g)r.   J   a2  List all active projects associated with the specified billing account.

*{command}* ACCOUNT_ID -- lists all active projects, for the specified
billing account id.

## EXAMPLES

To list projects linked to billing account `0X0X0X-0X0X0X-0X0X0X`, run:

    $ {command} --billing-account=0X0X0X-0X0X0X-0X0X0X
c                     [         R                  " SSS9R                  U 5        [        R                  R                  U 5        U R                  R                  S5        g )NFT)r   r   r   )r   r   r   r   r   r   r   r   )r   s    r   r   	List.ArgsX   sJ    	%(,..9k&.AMM""6*
!! # 	r    c                      gr"   r#   r#   r    r   r$   List.GetUriCacheUpdateOpe   r&   r    c                     [         R                  " 5       n[        R                  " UR                  5      nUR                  X1R                  S9$ r(   )r   r*   r	   r+   r-   r.   r)   r/   s       r   r4   List.Runj   s;    **,F$$T%9%9:K;;{**;55r    r#   Nr6   r#   r    r   r.   r.   J   s4    
 
	 
	  6r    r.   N)r;   
__future__r   r   r   googlecloudsdk.api_lib.billingr   googlecloudsdk.callioper   "googlecloudsdk.command_lib.billingr   r	   ReleaseTracksReleaseTrackALPHAListCommandr   BETAGAr.   r#   r    r   <module>rP      s    E &  ' 9 ( 4 4 D%%++,+6   +6 -+6\ D%%**D,=,=,@,@A#64 #6 B#6r    