
    
                         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  G d	 d
e
j                         Zddde_        y)z+Command for listing Compute Engine routers.    )absolute_import)division)unicode_literals)
list_pager)base_classes)base)flagsc                   *    e Zd ZdZdZed        Zd Zy)GetNatMappingInfoz,Display NAT Mapping information in a router.Nc                     t        j                         | _        | j                  j                  |d       t        j                  |       t
        j                  j                  |       y )Nzget NAT mapping info)operation_type)routers_flagsRouterArgument
ROUTER_ARGAddArgumentAddGetNatMappingInfoArgsr   URI_FLAGRemoveFromParser)clsparsers     3lib/surface/compute/routers/get_nat_mapping_info.pyArgszGetNatMappingInfo.Args"   sJ    "113CNNNv6LM**62MM""6*    c                    t        j                  | j                               }|j                  }| j                  j                  ||j                  t        j                  |            }|j                         }|j                  r|j                  |d<    |j                  j                  d	i |}t        j                  |j                  j                   ||j"                  |j$                  ddddd	      S )
N)scope_listernatNamer   result	pageTokennextPageToken
maxResults)limit
batch_sizemethodfieldcurrent_token_attributenext_token_attributebatch_size_attribute )r   ComputeApiHolderReleaseTrackclientr   ResolveAsResource	resourcescompute_flagsGetDefaultScopeListerAsDictnat_namemessages&ComputeRoutersGetNatMappingInfoRequestr   YieldFromListapitools_clientroutersr!   	page_size)selfargsholderr+   
router_refparamsrequests          r   RunzGetNatMappingInfo.Run)   s    **4+<+<+>?F]]F22"88@ 3 BJ
  F}}--fYDfooDDNvNG##&&jj>>" +,)
 
r   )__name__
__module____qualname____doc__r   classmethodr   r>   r(   r   r   r   r      s!    4*+ +r   r   z
        $ {command}

        shows a mapping of IP:port-ranges
        allocated to each VM's interface that is configured to use NAT via the
        specified router.z        To show NAT mappings from all NATs in router 'r1' in region
        'us-central1', run:

            $ {command} r1 --region=us-central1
        )DESCRIPTIONEXAMPLESN)rB   
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer	   r.   *googlecloudsdk.command_lib.compute.routersr   ListCommandr   detailed_helpr(   r   r   <module>rN      sJ    2 &  ' ' 7 ( E M%(( %T		#  r   