
    m                        S r SSK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  SSKJr  SSKJr  SSKJr  \R(                  r\
R*                  \
R,                  " \
R.                  R0                  \
R.                  R2                  \
R.                  R4                  5       " S S\
R6                  5      5       5       rg)z+Bigtable materialized views update command.    N)Optional)
exceptions)materialized_views)util)base)parser_arguments)parser_extensions)	arguments)log)	resources)bigtableadmin_v2_messagesc                      \ rS rSrSrS\R                  " S5      0r\S\	R                  SS4S j5       rS	\R                  S
\R                  S\R"                  4S jrS
\R                  S\\R"                     4S jrSrg)UpdateMaterializedView#   z$Update a Bigtable materialized view.EXAMPLESz          To update a materialized view, run:

            $ {command} my-materialized-view-id --instance=my-instance-id --deletion-protection=true
          parserreturnNc                     [         R                  " U S5        [         R                  " U 5      R                  S5      R	                  5         g )Nz	to updateT)r
   AddMaterializedViewResourceArgArgAdderAddDeletionProtectionAddAsync)r   s    1lib/surface/bigtable/materialized_views/update.pyArgsUpdateMaterializedView.Args2   s4    ,,V[Av44T:CCE    materialized_view_refargsc                 B    [         R                  " XR                  5      $ )a$  Updates a materialized view with the given arguments.

Args:
  materialized_view_ref: A resource reference of the new materialized view.
  args: an argparse namespace. All the arguments that were provided to this
    command invocation.

Returns:
  Updated materialized view resource object.
)r   Updatedeletion_protection)selfr   r   s      r   _UpdateMaterializedView.UpdateMaterializedView._UpdateMaterializedView7   s      $$77 r   c                    UR                   R                  R                  5       nU R                  X!5      nUR                  (       dJ  [
        R                  " U5      n[
        R                  " USR                  UR                  5       5      5      $ [        R                  " UR                  5       SUR                  S9  g)zThis is what gets called when the user runs this command.

Args:
  args: an argparse namespace. All the arguments that were provided to this
    command invocation.

Returns:
  Updated resource.
zUpdating materialized view {0}zmaterialized view)kindis_asyncN)CONCEPTSmaterialized_viewParser#   async_r   GetOperationRefAwaitMaterializedViewformatNamer   UpdatedResource)r"   r   r   	operationoperation_refs        r   RunUpdateMaterializedView.RunJ   s     !MM;;AAC,,-BII;;**95m''

*
1
12G2L2L2N
O 
 ""$ 
 r    )__name__
__module____qualname____firstlineno____doc__textwrapdedentdetailed_helpstaticmethodr   ArgumentInterceptorr   r   Resourcer	   	Namespacer   MaterializedViewr#   r   r3   __static_attributes__r5   r   r   r   r   #   s    
 - (// # - F#77 FD F F&// '' !11	&#--)::;r   r   )r:   r;   typingr   apitools.base.pyr   googlecloudsdk.api_lib.bigtabler   r   googlecloudsdk.callioper   r   r	   #googlecloudsdk.command_lib.bigtabler
   googlecloudsdk.corer   r   6googlecloudsdk.generated_clients.apis.bigtableadmin.v2r   	HttpErrorUniverseCompatibleReleaseTracksReleaseTrackGABETAALPHAUpdateCommandr   r5   r   r   <module>rS      s    2   ' > 0 ( 4 5 9 # ) \   	 $++00$2C2C2I2I=T// = =r   