
    6                     z    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	\R                  5      rg
)$VMware Engine network policy client.    )absolute_import)division)unicode_literals)
list_pager)util)NetworksClientc                   `   ^  \ rS rSrSrU 4S jrS r   S
S jr    SS jrS r	S r
S	rU =r$ )NetworkPoliciesClient   r   c                 ~   > [         [        U ]  5         U R                  R                  U l        [        5       U l        g )N)superr   __init__client"projects_locations_networkPoliciesservicer	   networks_client)self	__class__s    4lib/googlecloudsdk/api_lib/vmware/networkpolicies.pyr   NetworkPoliciesClient.__init__   s-    	
/1;;AADL)+D    c                     U R                   R                  UR                  5       S9nU R                  R	                  U5      nU$ N)name)messages6VmwareengineProjectsLocationsNetworkPoliciesGetRequestRelativeNamer   Get)r   resourcerequestresponses       r   r   NetworkPoliciesClient.Get"   sA    mmRR""$ S &G||(HOr   c                 4   UR                  5       R                  5       nUR                  5       R                  5       R                  5       nUR                  5       n	U R                  R	                  US9n
U R                  R                  US9nU R                  R                  US9nU R                  R                  X5      nUR                  U
l	        X:l
        Xl        Xl        U R                  R                  UU
U	S9nU R                  R                  U5      $ )N)descriptionenabled)parentnetworkPolicynetworkPolicyId)Parentr   Namer   NetworkPolicyNetworkServicer   GetByIDr   vmwareEngineNetworkedgeServicesCidrinternetAccess
externalIp9VmwareengineProjectsLocationsNetworkPoliciesCreateRequestr   Create)r   r    vmware_engine_network_idedge_services_cidrr%   internet_accessexternal_ip_accessr(   projectnetwork_policy_idnetwork_policyinternet_access_objexternal_ip_access_objvenr!   s                  r   r5   NetworkPoliciesClient.Create(   s     __++-Foo&&(--/G ]]00[0IN--666O!]]99" : $



&
&w
IC),N&&8#$7! 6OO(- 	P 	
  <<w''r   c                    U R                  U5      n/ nUb  X&l        UR                  S5        Ub  X6l        UR                  S5        Ub0  U R                  R                  US9nXl        UR                  S5        Ub0  U R                  R                  US9n	Xl        UR                  S5        U R                  R                  UUR                  5       SR                  U5      S9n
U R                  R                  U
5      $ )Nr%   r7   r&   zinternet_access.enabledzexternal_ip.enabled,)r)   r   
updateMask)r   r%   appendr1   r   r.   r2   r3   8VmwareengineProjectsLocationsNetworkPoliciesPatchRequestr   joinr   Patch)r   r    r%   r7   r8   r9   r<   update_maskr=   r>   r!   s              r   UpdateNetworkPoliciesClient.UpdateF   s    XXh'NK#. '%(:%-." MM88! 9 #&9#23%#}};;$  <  &"8./NN(&&(xx, 	O 	
  <<g&&r   c                     U R                   R                  U R                  R                  UR	                  5       S95      $ r   )r   Deleter   9VmwareengineProjectsLocationsNetworkPoliciesDeleteRequestr   )r   r    s     r   rL   NetworkPoliciesClient.Deleteg   s=    <<OO&&( 	P 	
 r   c                     UR                  5       nU R                  R                  US9n[        R                  " U R
                  USSS9$ )N)r(   pageSizenetworkPolicies)batch_size_attributefield)r   r   7VmwareengineProjectsLocationsNetworkPoliciesListRequestr   YieldFromListr   )r   location_resourcelocationr!   s       r   ListNetworkPoliciesClient.Listn   sU     --/HMM 	N 	
 
 ##'	! !r   )r   r   )NNN)NNNN)__name__
__module____qualname____firstlineno____doc__r   r   r5   rI   rL   rX   __static_attributes____classcell__)r   s   @r   r   r      sD    ,,
 (@  $! $'B! !r   r   N)r^   
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.vmwarer   &googlecloudsdk.api_lib.vmware.networksr	   VmwareClientBaser    r   r   <module>rg      s0    + &  ' ' . A_!D11 _!r   