
    Y
                        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 ddlmZ  ej&                  ej(                  j*                  ej(                  j,                        ej.                   G d dej0                                      Z ej&                  ej(                  j4                         G d de             Z ej8                  d      e_        ej:                  e_        y)z Command for listing VPN tunnels.    )absolute_import)division)unicode_literals)base_classes)filter_rewrite)lister)vpn_tunnels_utils)base)flags)
properties)resource_projection_specc                   *    e Zd ZdZdZed        Zd Zy)
ListBetaGAList VPN tunnels.Nc                     | j                   j                  t        j                         t	        j
                  |        | j                   j                  t        j                         y N)display_info	AddFormatr   DEFAULT_LIST_FORMATr   AddRegionsArgAddCacheUpdaterVpnTunnelsCompleterparsers    'lib/surface/compute/vpn_tunnels/list.pyArgszListBetaGA.Args(   sD    
!!%";";<
 
''(A(AB    c                    t        j                  | j                               }t        j                  |      }t
        j                  j                  j                  j                         }|j                         }t        j                  |j                  |j                        }t        j                          j#                  |j$                  |      \  |_        }|j'                  |||j(                        S )N)symbolsaliases)defaults)projectfilter_exprregions)r   ComputeApiHolderReleaseTrackr	   VpnTunnelHelperr   VALUEScorer"   	GetOrFailGetDisplayInfor   ProjectionSpec
transformsr    r   RewriterRewritefilterListr$   )selfargsholderhelperr"   r   r!   r#   s           r   RunzListBetaGA.Run.   s    **4+<+<+>?F..v6F$$,,668G&&(L'66''1E1EGH-668@@h  A  (DK;;[$,,   r   )__name__
__module____qualname____doc__detailed_helpstaticmethodr   r6    r   r   r   r      s'      -C C
r   r   c                        e Zd ZdZed        Zy)	ListAlphar   c                     t         j                  |        | j                  j                  t        j
                         y r   )r   r   r   r   r   HA_VPN_LIST_FORMATr   s    r   r   zListAlpha.ArgsA   s(    OOF
!!%":":;r   N)r7   r8   r9   r:   r<   r   r=   r   r   r?   r?   =   s    < <r   r?   zVPN tunnelsN)r:   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   r   *googlecloudsdk.api_lib.compute.vpn_tunnelsr	   googlecloudsdk.callioper
   .googlecloudsdk.command_lib.compute.vpn_tunnelsr   googlecloudsdk.corer   googlecloudsdk.core.resourcer   ReleaseTracksr&   BETAGAUniverseCompatibleListCommandr   ALPHAr?   GetRegionalListerHelpr;   r=   r   r   <module>rP      s    ' &  ' 7 9 1 H ( @ * A D%%**D,=,=,@,@A!!   B8 D%%++,<
 < -< ><==mL
 $22	 r   