
                         V   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      \R(                   " S
 S\R*                  5      5       5       rg)z&gcloud dns record-sets update command.    )absolute_import)division)unicode_literals)resource_record_sets)util)apis)base)flagsc                   >    \ rS rSrSr\S 5       r\S 5       rS rSr	g)Update   ao  Updates a record-set in a managed-zone.

This command updates a record-set contained within the specified
managed-zone.

## EXAMPLES

To update a record-set with dnsName foo.bar.com., record type A to have rrdata
[1.2.3.4, 9.8.7.6] and ttl 60 in my_zone, run:

  $ {command} foo.bar.com. --rrdatas=1.2.3.4,9.8.7.6 --type=A --ttl=60
     --zone=my_zone

To update a record-set with dnsName foo.bar.com., record type A to have rrdata
[1.2.3.4, 9.8.7.6] and ttl 60 in my_zone that is located in us-east1-a, run:

  $ {command} foo.bar.com. --rrdatas=1.2.3.4,9.8.7.6 --type=A --ttl=60
     --zone=my_zone --location=us-east1-a
c                     U R                  5       [        R                   R                  [        R                   R                  4;   $ )N)ReleaseTrackr	   BETAALPHA)clss    %lib/surface/dns/record_sets/update.py_IsBetaOrAlphaUpdate._IsBetaOrAlpha5   s:    $"3"3"8"8"&"3"3"9"9"; ; ;    c                    [         R                  " 5       R                  U5        [         R                  " 5       R                  U5        [         R                  " 5       R                  U5        [         R
                  " S5      R                  U5        [         R                  " S5      R                  U5        [         R                  " U R                  5       S9R                  U5        UR                  R                  S 5        UR                  R                  [         R                  5        UR                  R                  [         R                  5        g )NTF)use_deprecated_names)r
   
GetZoneArgAddToParserGetLocationArgGetResourceRecordSetsNameArgGetResourceRecordSetsTypeArgGetResourceRecordSetsTtlArg$GetResourceRecordSetsRrdatasArgGroupr   display_infoAddCacheUpdaterAddTransformsRESOURCERECORDSETS_TRANSFORMS	AddFormatRESOURCERECORDSETS_FORMAT)r   parsers     r   ArgsUpdate.Args:   s    	""6*	&&v.	&&(44V<	&&t,88@	%%e,88@	.. //1k&
''-
%%e&I&IJ
!!%"A"ABr   c                 v   [         R                  " U R                  5       U5      n[        R                  " SU5      n[         R
                  " U5      n[         R                  " U5      R                  UR                  [         R                  " X!5      SS9n[        R                  " UUR                  U5      nUR                  UR                  UR                  [         R                  " UR                   5      UR"                  US9nUS:X  a  UR$                  Ul        UR&                  R)                  U5      nU$ )Ndnszdns.managedZones)params
collection)projectmanagedZonenametyperesourceRecordSetv2)r   GetApiFromTrackAndArgsr   r   GetMessagesModuleGetApiClientGetRegistryParsezoneGetParamsForRegistryrrsets_utilCreateRecordSetFromArgsr-   !DnsResourceRecordSetsPatchRequestr.   AppendTrailingDotr/   r0   locationresourceRecordSetsPatch)	selfargsapi_versionmessages
dns_clientzone_refresource_record_setrequestresults	            r   Run
Update.RunI   s   --d.?.?.A4HK%%e[9H"";/J,22		((;% 3 'H
 &== 88  ((##$7$<$<= %%- 9 G dg**009FMr    N)
__name__
__module____qualname____firstlineno____doc__classmethodr   r'   rJ   __static_attributes__rL   r   r   r   r      s6    
( ; ; C Cr   r   N)rQ   
__future__r   r   r   googlecloudsdk.api_lib.dnsr   r:   r   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper	   googlecloudsdk.command_lib.dnsr
   ReleaseTracksr   GAr   r   UniverseCompatibleUpdateCommandr   rL   r   r   <module>r]      s    - &  ' J + , ( 0 $++00$2C2C2I2I HT H Hr   