
    
                         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g)z7Command for listing internal IP addresses in a network.    )absolute_import)division)unicode_literals)
list_pager)base_classes)base)
propertiesc                   >    \ rS rSrSrSrSS\S.r\S 5       rS r	S	r
g
)ListIpAddresses   z4List internal IP addresses/ranges related a network.z    List all internal IP addresses in a network:

      $ {command} my-network

    List IP addresses only for given types:

      $ {command} my-network           --types=SUBNETWORK,PEER_USED,REMOTE_USED
  z(List internal IP addresses in a network.zL      *{command}* is used to list internal IP addresses in a network.
      )briefDESCRIPTIONEXAMPLESc                     [         R                  R                  U 5        U R                  SSS9  U R                  SS SS9  U R                  R                  S5        g )	NnamezThe name of the network.)helpz--typesc                 B    U R                  SS5      R                  5       $ )N-_)replaceupper)xs    1lib/surface/compute/networks/list_ip_addresses.py<lambda>&ListIpAddresses.Args.<locals>.<lambda>9   s    qyyc*002    z        Optional comma separate list of ip address types to filter on. Valid
        values are `SUBNETWORK`, `RESERVED`, `PEER_USED`, `PEER_RESERVED`,
        `REMOTE_USED` and `REMOTE_RESERVED`.
        )typer   z        table(
            type,
            cidr:label=IP_RANGE,
            region,
            owner,
            purpose)
    )r   URI_FLAGRemoveFromParseradd_argumentdisplay_info	AddFormat)parsers    r   ArgsListIpAddresses.Args3   sa    MM""6*
%?@
2   !! # 	r   c           	         [         R                  " U R                  5       5      nUR                  R                  nUR
                  n[        R                  R                  R                  R                  SS9nUR                  XQR                  UR                  S9n[        R                  " UR                   USSUR"                  S S9nU$ )NT)required)projectnetworktypesr   items)methodfieldlimit
batch_size)r   ComputeApiHolderReleaseTrackclientapitools_clientMESSAGES_MODULEr	   VALUEScorer(   Get%ComputeNetworksListIpAddressesRequestr   r*   r   YieldFromListnetworksr.   )selfargsholderr2   messagesr(   requestr+   s           r   RunListIpAddresses.RunI   s    **4+<+<+>?F]]**F%%H$$,,00$0?G<<$** = >G$$ jjE Lr    N)__name__
__module____qualname____firstlineno____doc__exampledetailed_helpstaticmethodr$   r@   __static_attributes__rB   r   r   r   r      s;    <	' 5
 - 	 	*r   r   N)rG   
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   googlecloudsdk.corer	   ReleaseTracksr1   ALPHAListCommandr   rB   r   r   <module>rT      sW    > &  ' ' 7 ( * D%%++,<d&& < -<r   