
                            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SKJr  SS
KJr  SSKJr  SSKJr  S rS rSS jrS r\	R4                  " \	R6                  R8                  \	R6                  R:                  \	R6                  R<                  5       " S S\	R>                  5      5       r g)z!Export target HTTP proxy command.    )absolute_import)division)unicode_literalsN)base_classes)base)flags)scope)target_http_proxies_utils)util)filesc                      SSSS.$ )NExport a target HTTP proxy.z          Exports a target HTTP proxy's configuration to a file.
          This configuration can be imported at a later time.
          z          A target HTTP proxy can be exported by running:

            $ {command} NAME --destination=<path-to-file>
          )briefDESCRIPTIONEXAMPLES r       1lib/surface/compute/target_http_proxies/export.py_DetailedHelpr       s     (

 r   c                     U [         R                  R                  :X  a  gU [         R                  R                  :X  a  gg)z3Returns the API version based on the release track.alphabetav1)r   ReleaseTrackALPHABETA)release_tracks    r   _GetApiVersionr   2   s3    d''---d'',,,	r   c                 B    [         R                  " S[        U 5      SUS9$ )z!Returns the resource schema path.computeTargetHttpProxyfor_help)export_utilGetSchemaPathr   )r   r#   s     r   _GetSchemaPathr&   ;   s&    		"	"]#	
 r   c                    UR                   nUR                  U UR                  [        R                  R
                  [        R                  " U5      S9n[        R                  " XE5      nU R                  (       aI  [        R                  " U R                  5       n[        R                  " UU[        U5      S9  SSS5        g[        R                  " U[         R"                  [        U5      S9  g! , (       d  f       g= f)z8Issues requests necessary to export target HTTP proxies.)default_scopescope_lister)messagestreamschema_pathN)clientResolveAsResource	resourcescompute_scope	ScopeEnumGLOBALcompute_flagsGetDefaultScopeListerr
   SendGetRequestdestinationr   
FileWriterr$   Exportr&   sysstdout)argsholdertarget_http_proxy_argr   r-   target_http_proxy_reftarget_http_proxyr+   s           r   _Runr@   D   s    ==&/AA
!++22 66v>	 B @ 0>>% 
			$**	+v#$]35 
,	+ !zz"=13 
,	+s    C33
Dc                   @    \ rS rSrSr\" 5       rSr\S 5       r	S r
Srg)r8   ^   r   Nc                     [         R                  " 5       U l        U R                  R                  USS9  [        R
                  " U[        U R                  5       SS95        g )Nexport)operation_typeTr"   )r   TargetHttpProxyArgumentTARGET_HTTP_PROXY_ARGAddArgumentr$   AddExportFlagsr&   r   )clsparsers     r   ArgsExport.Argsf   sP     % = = ?C))&)Js//1DACr   c                     [         R                  " U R                  5       5      n[        XU R                  U R                  5       5      $ )N)r   ComputeApiHolderr   r@   rG   )selfr;   r<   s      r   Run
Export.Runm   s9    **4+<+<+>?Fd88$:K:K:MNNr   r   )__name__
__module____qualname____firstlineno____doc__r   detailed_helprG   classmethodrL   rQ   __static_attributes__r   r   r   r8   r8   ^   s.     $/-C COr   r8   )F)!rW   
__future__r   r   r   r9   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer   r3   r	   r0   6googlecloudsdk.command_lib.compute.target_http_proxiesr
   !googlecloudsdk.command_lib.exportr   r$   googlecloudsdk.core.utilr   r   r   r&   r@   ReleaseTracksr   GAr   r   Commandr8   r   r   r   <module>re      s    ( &  ' 
 7 ( E E H \ A *$34 D%%(($*;*;*@*@%%++-OT\\ O-Or   