
    "                        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dl	m
Z
 ddl	mZ dd	l	mZ dd
lmZ dZdZ ej"                  ej$                  j&                         G d dej(                               Z ej"                  ej$                  j,                  ej$                  j.                         G d dej(                               Zy)z3`gcloud service-directory services update` command.    )absolute_import)division)unicode_literals)services)base)flags)resource_args)util)logservicei  c                   .    e Zd ZdZddiZed        Zd Zy)UpdateUpdates a service.EXAMPLESz          To update a Service Directory service, run:

            $ {command} my-service --namespace=my-namespace --location=us-east1 --annotations=a=b,c=d
          c                 n    t        j                  | d       t        j                  | t        t
               y Nz
to update.)r	   AddServiceResourceArgr   AddAnnotationsFlag_RESOURCE_TYPE_SERVICE_LIMITparsers    0lib/surface/service_directory/services/update.pyArgszUpdate.Args-   s$    ''=	V^^D    c                 *   t        j                         }|j                  j                  j	                         }t        j                  |j                  t              }|j                  ||      }t        j                  |j                  t               |S N)r   ServicesClientCONCEPTSr   Parser
   ParseAnnotationsArgannotationsr   r   r   UpdatedResource
servicesId)selfargsclientservice_refr"   results         r   Runz
Update.Run2   sk    $$&F--''--/K**4+;+;^LK]];4F..?Mr   N__name__
__module____qualname____doc__detailed_helpstaticmethodr   r*    r   r   r   r       s1     - E Er   r   c                   .    e Zd ZdZddiZed        Zd Zy)
UpdateBetar   r   z          To update a Service Directory service, run:

            $ {command} my-service --namespace=my-namespace --location=us-east1 --metadata=a=b,c=d
          c                 n    t        j                  | d       t        j                  | t        t
               y r   )r	   r   r   AddMetadataFlagr   r   r   s    r   r   zUpdateBeta.ArgsJ   s$    ''=	&..Ar   c                 *   t        j                         }|j                  j                  j	                         }t        j                  |j                  t              }|j                  ||      }t        j                  |j                  t               |S r   )r   ServicesClientBetar   r   r    r
   ParseMetadataArgmetadatar   r   r   r#   r$   )r%   r&   r'   r(   r:   r)   s         r   r*   zUpdateBeta.RunO   si    ((*F--''--/K$$T]]NCH]];1F..?Mr   Nr+   r2   r   r   r4   r4   =   s1     - B Br   r4   N)r/   
__future__r   r   r   (googlecloudsdk.api_lib.service_directoryr   googlecloudsdk.callioper   ,googlecloudsdk.command_lib.service_directoryr   r	   r
   googlecloudsdk.corer   r   r   ReleaseTracksReleaseTrackGAUpdateCommandr   ALPHABETAr4   r2   r   r   <module>rF      s    : &  ' = ( > F = # D%%(()T  *8 D%%++T->->-C-CD##  Er   