
    J                         d Z ddlmZ ddlmZ ddlmZ ddl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 ej(                  d      ddde_        y)z8Command for describing a NAT in a Compute Engine router.    )absolute_import)division)unicode_literalsN)base_classes)base)flags)
nats_utilsc                   *    e Zd ZdZdZed        Zd Zy)Describez*Describe a NAT in a Compute Engine router.Nc                     t        j                         | _        | j                  j                  |       t	        j
                  |dd       t        j                  |d       y )NNATdescribe)operation_type)routers_flagsRouterArgumentForNat
ROUTER_ARGAddArgumentcompute_flagsAddRegionFlag
nats_flagsAddNatNameArg)clsparsers     ,lib/surface/compute/routers/nats/describe.pyArgszDescribe.Args#   sF    "779CNNNv&jIVJ?    c                    t        j                  | j                               }|j                  }| j                  j                  ||j                        } |j                  j                  di |j                         }|j                  |j                  j                  d|fg      d   }t        j                  ||j                        S )NGetr    )r   ComputeApiHolderReleaseTrackclientr   ResolveAsResource	resourcesmessagesComputeRoutersGetRequestAsDictMakeRequestsapitools_clientroutersr	   FindNatOrRaisename)selfargsholderr"   
router_refrequestrouters          r   RunzDescribe.Run,   s    **4+<+<+>?F]]F2249I9IJJ6foo66M9J9J9LMG  6#9#9#A#A5#*#, "- ../1F $$VTYY77r   )__name__
__module____qualname____doc__r   classmethodr   r3   r   r   r   r   r      s#    2*@ @
8r   r   zO
        *{command}* is used to describe a NAT in a Compute Engine router.
    zi    To describe NAT 'n1' in router 'r1', run:

      $ {command} n1 --router=r1 --region=us-central1
    a      This command, when specified without alpha or beta, uses the compute/v1/routers API. The full documentation
    for this API can be found at: https://cloud.google.com/compute/docs/reference/rest/v1/routers/

    The beta command uses the compute/beta/routers API. The full documentation
    for this API can be found at: https://cloud.google.com/compute/docs/reference/rest/beta/routers/

    The alpha command uses the compute/alpha/routers API. Full documentation is not available for the alpha API.
    )DESCRIPTIONEXAMPLESzAPI REFERENCE)r7   
__future__r   r   r   textwrapgooglecloudsdk.api_lib.computer   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer   r   *googlecloudsdk.command_lib.compute.routersr   /googlecloudsdk.command_lib.compute.routers.natsr   r	   DescribeCommandr   dedentdetailed_helpr   r   r   <module>rE      sc    ? &  '  7 ( E M O F8t## 8: 	  		 r   