
    >	                     n    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\R                  5      r
g	)
z<Client for interaction with Gateway CRUD on API Gateway API.    )absolute_import)division)unicode_literals)base)common_flagsc                   ,    \ rS rSrSrSS jrSS jrSrg)	GatewayClient   z4Client for gateway objects on Cloud API Gateway API.Nc                     [         R                  R                  U USSS9  U R                  5         U R	                  5         U R                  S5        U R                  S5        U R                  5         g )N#ApigatewayProjectsLocationsGatewaysprojects_locations_gateways)clientmessage_baseservice_namegatewaysapigatewayGateway)r   
BaseClient__init__	DefineGetDefineDelete
DefineListDefineUpdateDefineIamPolicyFunctions)selfr   s     2lib/googlecloudsdk/api_lib/api_gateway/gateways.pyr   GatewayClient.__init__   sd    OOT$**O*G  I 	NNOOJ)*!!#    c                    [         R                  " UU R                  R                  R                  5      nU R                  R                  UR                  5       UUR                  5       US9nU R                  UR                  5       R                  5       UR                  5       US9nU R                  R                  U5      nU$ )a
  Creates a new gateway object.

Args:
  gateway_ref: Resource, a resource reference for the gateway
  api_config: Resource, a resource reference for the gateway
  display_name: Optional display name
  labels: Optional cloud labels

Returns:
  Long running operation.
)namelabels	apiConfigdisplayName)parent	gatewayIdr   )r   ProcessLabelsFlagmessagesApigatewayGatewayLabelsValueRelativeNamecreate_requestParentNameserviceCreate)r   gateway_ref
api_configdisplay_namer    gatewayreqresps           r   r.   GatewayClient.Create(   s     ++''335F mm--%%'))+ 	 . 
G 

!!#002""$!  
C
 <<s#DKr    )N)NN)__name__
__module____qualname____firstlineno____doc__r   r.   __static_attributes__r6   r   r   r	   r	      s    <	$r   r	   N)r;   
__future__r   r   r   "googlecloudsdk.api_lib.api_gatewayr   &googlecloudsdk.command_lib.api_gatewayr   r   r	   r6   r   r   <module>r@      s*     C &  ' 3 ?,DOO ,r   