
                         P    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 Z	d Z
y	)
z%Utils for cluster isolation commands.    )absolute_import)division)unicode_literals)util)flagsc                    ~ t        j                  |d      s|S |j                  j                         }|j                  (t        j                  |      j                         |_        |j                  j                         dk(  rd|j                  _
        nG|j                  j                         dk(  rd|j                  _
        nt        d|j                  z        t        d|       |S )a/  Updates the Cluster Isolation mode.

  If --enable-cluster-isolation flag is specified, it will be used to
  update the Cluster Isolation mode.

  Args:
    ref: reference to the cluster object.
    args: command line arguments.
    request: API request to be issued.

  Returns:
    modified request
  enable_cluster_isolationTRUETFALSEFz0Invalid value for --enable-cluster-isolation: %senableClusterIsolation)r   FlagIsExplicitlySetcalliope_commandReleaseTrackclusterr   GetMessagesModuleClusterr	   upperr   
ValueError_AddFieldToUpdateMask)refargsrequestrelease_tracks       Hlib/googlecloudsdk/command_lib/edge_cloud/container/cluster_isolation.pyUpdateClusterIsolationr      s     
		"	"4)C	DN''446-__,,];CCEGO	""((*f4-1GOO*$$**,7-2GOO*
:

'
'	( 
 0':	.    c                 z    |j                   s	| |_         |S | |j                   vr|j                   dz   | z   |_         |S )N,)
updateMask)fieldr   s     r   r   r   ?   sC    			GN
'$$$ ++c1E9G	.r   N)__doc__
__future__r   r   r   +googlecloudsdk.api_lib.edge_cloud.containerr   googlecloudsdk.command_lib.runr   r   r    r   r   <module>r&      s$    , &  ' < 0$Nr   