
    k                     8   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  \
R                  " \
R                   R"                  \
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)
properties)resource_projectorc                   >    \ rS rSrSrSrSS\S.r\S 5       rS r	Sr
g	)

ListRoutes   z=List received or advertised routes for a VPC network peering.z    List received routes for VPC network peering in us-central1:

      $ {command} peering-name         --network=network-name --region=us-central1 --direction=INCOMING
  z      *{command}* is used to list received or advertised routes for a VPC
      network peering. This includes subnetwork routes, static custom routes,
      and dynamic custom routes.
      )briefDESCRIPTIONEXAMPLESc                     U R                  SSS9  U R                  SSSS9  U R                  SSS	S9  U R                  S
SSSS.S SS9  U R                  R                  S5        g )Nnamez'Name of the peering to list routes for.)helpz	--networkTzNetwork of the peering.)requiredr   z--regionzRegion to list the routes for.z--directionzTo list received routes.zTo list advertised routes.)INCOMINGOUTGOINGc                 "    U R                  5       $ )N)upper)xs    4lib/surface/compute/networks/peerings/list_routes.py<lambda>!ListRoutes.Args.<locals>.<lambda>C   s
    qwwy    z        Direction of the routes to list. To list received routes, use
        `INCOMING`. To list advertised routes, use `OUTGOING`.
        )r   choicestyper   z        table(
            dest_range,
            type,
            next_hop_region,
            priority,
            status)
    )add_argumentdisplay_info	AddFormat)parsers    r   ArgsListRoutes.Args5   s    
%NO
d)B  D
T(H  J
24
 !   !! # 	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                  nU" UUR                  UR                  UR                  S9nUR                  nUR                   S:X  a  UR"                  Ul        OUR$                  Ul        [&        R(                  " UR*                  USSUR,                  S S9n	S n
U	 H6  n[.        R0                  " U5      nU
" UR                   US	   5      US
'   Uv   M8     g 7f)NT)r   )projectnetworkpeeringNameregionr   ListPeeringRoutesitems)methodfieldlimit
batch_sizec                 0    U(       a  U S:X  a  ggU S:X  a  gg)z?Create customized status field based on direction and imported.r   acceptedzaccepted by peerzrejected by configzrejected by peer config )	directionimporteds     r   _TransformStatus(ListRoutes.Run.<locals>._TransformStatusk   s!    	
"#
"%*r   r5   status)r   ComputeApiHolderReleaseTrackclientapitools_clientMESSAGES_MODULEr	   VALUEScorer'   Get'ComputeNetworksListPeeringRoutesRequestr(   r   r*   DirectionValueValuesEnumr4   r   r   r   YieldFromListnetworksr/   r
   MakeSerializable)selfargsholderr;   messagesr'   list_requestrequest
directionsr,   r6   itemroutes                r   RunListRoutes.RunQ   s(    **4+<+<+>?F]]**F%%H$$,,00$0?GCCLII{{	G
 66J~~#$--g$--g$$"jjE+  11$7e(z9JKeHok	 s   EEr3   N)__name__
__module____qualname____firstlineno____doc__exampledetailed_helpstaticmethodr$   rO   __static_attributes__r3   r   r   r   r      s?     F' J
 - 	 	6+r   r   N)rU   
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   googlecloudsdk.corer	   googlecloudsdk.core.resourcer
   ReleaseTracksr:   ALPHABETAGAListCommandr   r3   r   r   <module>re      s|    > &  ' ' 7 ( * ; D%%++T->->-C-C%%((*^!! ^*^r   