
    g                        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  SS	KJr  SS
KJr  \	R                   " \	R"                  R$                  5       " S S\	R&                  5      5       r\R*                  " S5      \l        \	R                   " \	R"                  R.                  \	R"                  R0                  5       " S S\5      5       r\R4                  " S5      \l        g)z'Command for listing instance templates.    )absolute_import)division)unicode_literals)base_classes)lister)base)
completers)flags)	arg_utilsc                   :    \ rS rSrSr\S 5       rS rS rS r	Sr
g)	List   7List Compute Engine virtual machine instance templates.c                     U R                   R                  [        R                  5        [        R
                  " U SSS9  U R                   R                  [        R                  5        g )NTregionalglobal_)	display_info	AddFormatr
   DEFAULT_LIST_FORMATr   AddMultiScopeListerFlagsAddCacheUpdaterr	   InstanceTemplatesCompleterparsers    .lib/surface/compute/instance_templates/list.pyArgs	List.Args!   sH    
!!%";";<
##FT4H
''
(M(MN    c                 .    [         R                  " X5      $ N)r   ParseNamesAndRegexpFlagsselfargs	resourcess      r   
ParseFlagsList.ParseFlags'   s    **4;;r   c                     [         R                  " UUR                  R                  UR                  R                  UR                  R                  S9$ )N)regional_serviceglobal_serviceaggregation_service)r   MultiScopeListerapitools_clientregionInstanceTemplatesinstanceTemplates)r$   clients     r   GetListImplementationList.GetListImplementation*   sE    ""//GG--??"22DD	
 
r   c                     [         R                  " U R                  5       5      nUR                  n[        R
                  " XR                  5      nU R                  U5      n[        R                  " XE5      $ r!   	r   ComputeApiHolderReleaseTrackr1   r   ParseMultiScopeFlagsr&   r2   Invoker$   r%   holderr1   request_datalist_implementations         r   RunList.Run2   sZ    **4+<+<+>?F]]F..t5E5EFL44V<==;;r    N)__name__
__module____qualname____firstlineno____doc__staticmethodr   r'   r2   r>   __static_attributes__r@   r   r   r   r      s(    ?O O
<
<r   r   zinstance templatesc                   F    \ rS rSrSr\S 5       rS rS rS r	S r
S rS	rg
)	ListAlpha?   r   c                    U R                   R                  [        R                  5        [        R
                  " U SSS9  U R                   R                  [        R                  5        U R                  SSSS.[        R                  SS9  g )	NTr   z--viewz_Output contains all configuration details of the instance template, including partner metadata.zqDefault output view. Output contains all configuration details of the instance template, except partner metadata.)FULLBASICz9Specifies the information that the output should contain.)choicestypehelp)r   r   r
   r   r   r   r   r	   r   add_argumentr   ChoiceToEnumNamer   s    r   r   ListAlpha.ArgsC   s|    
!!%";";<
##FT4H
''
(M(MN
9F	
 ''H  r   c                 .    [         R                  " X5      $ r!   )r   r8   r#   s      r   r'   ListAlpha.ParseFlagsX   s    &&t77r   c                 t    US:X  a  UR                   R                  $ US:X  a  UR                   R                  $ g )NrL   rM   )ViewValueValuesEnumrL   rM   )r$   viewrequest_messages      r   _GetInstanceViewListAlpha._GetInstanceView[   s7    v~00555	00666r   c                     [        UR                  [        R                  5      (       a  UR                  $ UR
                  $ r!   )
isinstance	scope_setr   	RegionSet)ComputeRegionInstanceTemplatesListRequest#ComputeInstanceTemplatesListRequest)r$   messagesr<   s      r   _getRequestListAlpha._getRequestb   s3    ,((&*:*:;;???777r   c                    [         R                  " UUR                  R                  UR                  R                  UR                  R                  U R                  UR                  U R                  UR                  U5      5      S9$ )N)r*   r+   r,   instance_view_flag)	r   r-   r.   r/   r0   rZ   rX   rc   rb   )r$   r1   r%   r<   s       r   r2   ListAlpha.GetListImplementationg   sm    ""//GG--??"22DD00IIt''F
 r   c                     [         R                  " U R                  5       5      nUR                  n[        R
                  " XR                  5      nU R                  X1U5      n[        R                  " XE5      $ r!   r5   r:   s         r   r>   ListAlpha.Runr   s\    **4+<+<+>?F]]F..t5E5EFL44V<P==;;r   r@   N)rA   rB   rC   rD   rE   rF   r   r'   rZ   rc   r2   r>   rG   r@   r   r   rI   rI   ?   s0    ? (88
	<r   rI   N)rE   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer	   5googlecloudsdk.command_lib.compute.instance_templatesr
   $googlecloudsdk.command_lib.util.apisr   ReleaseTracksr7   GAListCommandr   GetGlobalListerHelpdetailed_helpALPHABETArI   GetGlobalRegionalListerHelpr@   r   r   <module>rx      s    . &  ' 7 1 ( 9 G : D%%(()<4 < *<< "556JK  D%%++T->->-C-CD9< 9< E9<x 'BB	 r   