
    K
                     n   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  e	j                   e	j"                  j$                  e	j"                  j&                  e	j"                  j(                        e	j*                   G d de	j,                                      Zy)z-`gcloud api-gateway gateways create` command.    )absolute_import)division)unicode_literals)gateways)
operations)base)common_flags)operations_util)resource_args)labels_utilc                   0    e Zd ZdZdddZed        Zd Zy)CreatezCreate a new gateway.z{description}z        To create a gateway in 'us-central1' run:

          $ {command} my-gateway --api=my-api --api-config=my-config --location=us-central1
        )DESCRIPTIONEXAMPLESc                     t         j                  j                  |        t        j                  |        t        j                  |        t        j                  | d       y )Ncreated)	r   
ASYNC_FLAGAddToParserr	   AddDisplayNameArgr   AddCreateLabelsFlagsr   AddGatewayApiConfigResourceArgs)parsers    *lib/surface/api_gateway/gateways/create.pyArgszCreate.Args0   s@    OO'""6*$$V,11&)D    c                    |j                   j                  j                         }|j                   j                  j                         }t	        j
                         }|j                  |||j                  |j                        }dj                  |j                         |j                               }t        j                  |j                  t        j                          |j"                  ||j$                        S )N)display_namelabelsz;Waiting for API Gateway [{}] to be created with [{}] config)servicewait_stringis_async)CONCEPTSgatewayParse
api_configr   GatewayClientr   r   r   formatNameRelativeNamer
   PrintOperationResultnamer   OperationsClientr   async_)selfargsgateway_refapi_config_refgateways_clientrespwaits          r   Runz
Create.Run7   s    --''--/K]]--335N,,.O!!+"0/3/@/@)- " 6D
 IOON779;D //		##%'' r   N)__name__
__module____qualname____doc__detailed_helpstaticmethodr   r5    r   r   r   r      s3      		- E Er   r   N)r9   
__future__r   r   r   "googlecloudsdk.api_lib.api_gatewayr   r   googlecloudsdk.callioper   &googlecloudsdk.command_lib.api_gatewayr	   r
   r   $googlecloudsdk.command_lib.util.argsr   ReleaseTracksReleaseTrackALPHABETAGADefaultUniverseOnlyCreateCommandr   r<   r   r   <module>rI      s     4 &  ' 7 9 ( ? B @ < D%%++T->->-C-C%%((*'T ' *'r   