
    8                         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
  ej                  ej                  j                  ej                  j                  ej                  j                         G d d	ej                                Zy
)z7recommender API recommendations Mark Dismissed command.    )absolute_import)division)unicode_literals)recommendation)base)flagsc                   &    e Zd ZdZed        Zd Zy)MarkDismisseda  Mark recommendation's state as DISMISSED.

     Mark recommendation's state as DISMISSED. Can be applied to recommendations
     in ACTIVE state. The following parent resources are supported: project,
     billing account, folder, and organization as parent resources for
     recommendations.

     ## EXAMPLES
     To mark a recommendation as DISMISSED:

     $ {command} abcd-1234 --project=project-id --location=global
     --recommender=google.compute.instance.MachineTypeRecommender --etag=abc123
  c                     t        j                  |        | j                  dt        d       | j                  dddd       | j                  d	d
dd       | j                  dddd       y)zArgs is called by calliope to gather arguments for this command.

    Args:
      parser: An argparse parser that you can use to add arguments that go on
        the command line after this command.
    RECOMMENDATIONz3Recommendation ID which will be marked as dismissed)typehelpz
--locationLOCATIONTLocation)metavarrequiredr   z--recommenderRECOMMENDERz"Recommender of the recommendationsz--etagETAGzEtag of a recommendation)r   r   r   N)r   AddParentFlagsToParseradd_argumentstr)parsers    9lib/surface/recommender/recommendations/mark_dismissed.pyArgszMarkDismissed.Args+   s     
  (
B  
 j4j  J
1	  3
 '	  )    c                     t        j                  | j                               }t        j                  |      }|j                  ||j                        S )zRun 'gcloud recommender recommendations mark-dismissed'.

    Args:
      args: argparse.Namespace, The arguments that this command was invoked
        with.

    Returns:
      The updated recommendation after being marked as dismissed.
    )r   CreateClientReleaseTrackr   GetRecommendationNamer
   etag)selfargsclientnames       r   RunzMarkDismissed.RunF   sD     (():):)<=F&&t,Ddii00r   N)__name__
__module____qualname____doc__staticmethodr   r%    r   r   r
   r
      s      ) )41r   r
   N)r)   
__future__r   r   r   "googlecloudsdk.api_lib.recommenderr   googlecloudsdk.callioper   &googlecloudsdk.command_lib.recommenderr   ReleaseTracksr   ALPHABETAGACommandr
   r+   r   r   <module>r5      ss    > &  ' = ( 8 D%%++T->->-C-C%%((*61DLL 61*61r   