
                         D   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
S.r\
R                  " \
R                  R                   \
R                  R"                  \
R                  R$                  5       " S S\
R&                  5      5       r\\l        g)z>Command for updating the MACsec configuration of interconnect.    )absolute_import)division)unicode_literals)base_classes)client)base)flagsz        *{command}* is used to update MACsec configuration of interconnect. An
        interconnect represents a single specific connection between Google and
        the customer.

        For an example, refer to the *EXAMPLES* section below.
        zp        To enable MACsec on an interconnect, run:

          $ {command} example-interconnect --enabled
        )DESCRIPTIONEXAMPLESc                   8    \ rS rSrSrSr\S 5       rS rS r	Sr
g)Update.   zUpdate a Compute Engine interconnect MACsec configuration.

*{command}* is used to update MACsec configuration of interconnect. An
interconnect represents a single specific connection between Google and the
customer.
Nc                     [         R                  " 5       U l        U R                  R                  USS9  [         R                  " U5        [         R
                  " U5        g )Nupdate)operation_type)r	   InterconnectArgumentINTERCONNECT_ARGAddArgumentAddMacsecEnabledForUpdateAddFailOpenForUpdate)clsparsers     2lib/surface/compute/interconnects/macsec/update.pyArgsUpdate.Args;   sH     557C$$VH$E	##F+	v&    c                     g)Nzcompute.interconnects )selfs    r   
CollectionUpdate.CollectionC   s    "r   c                    [         R                  " U R                  5       5      nU R                  R	                  XR
                  5      n[        R                  " X2R                  S9nS nUR                  b+  UR                  5       R                  nUR                  Ul        UR                  S S S S S S S S S UR                  US9$ )N)compute_client)descriptioninterconnect_typerequested_link_count	link_typeadmin_enablednoc_contact_emaillocationlabelslabel_fingerprintmacsec_enabledmacsec)r   ComputeApiHolderReleaseTrackr   ResolveAsResource	resourcesr   Interconnect	fail_openDescriber.   failOpenPatchenabled)r   argsholderrefinterconnectr.   s         r   Run
Update.RunF   s    **4+<+<+>?F



1
1$8H8H
IC&&s==ILF~~!$$&--ffo!||   r   r   )__name__
__module____qualname____firstlineno____doc__r   classmethodr   r    r=   __static_attributes__r   r   r   r   r   .   s+     ' '#r   r   N)rC   
__future__r   r   r   googlecloudsdk.api_lib.computer   ,googlecloudsdk.api_lib.compute.interconnectsr   googlecloudsdk.callioper   0googlecloudsdk.command_lib.compute.interconnectsr	   DETAILED_HELPReleaseTracksr0   ALPHABETAGAUpdateCommandr   detailed_helpr   r   r   <module>rR      s    E &  ' 7 ? ( B		( T..33T5F5F5I5I*T **Z % r   