
                         4   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
0r\	R                  " \	R                  R                  \	R                  R                   \	R                  R"                  5       " S S\	R$                  5      5       rg)z-recommender API recommendations list command.    )absolute_import)division)unicode_literals)recommendation)arg_parsers)base)flagsEXAMPLESz
        To mark a recommendation as FAILED:

          $ {command} abcd-1234 --project=project-id --location=global --recommender=google.compute.instance.MachineTypeRecommender --etag=abc123 --state-metadata=key1=value1,key2=value2
        c                   2    \ rS rSrSr\r\S 5       rS r	Sr
g)
MarkFailed$   zMark a recommendation's state as FAILED.

Mark a recommendation's state as FAILED. Can be applied to recommendations
in ACTIVE, CLAIMED, SUCCEEDED, or FAILED state.
c           	      .   [         R                  " U 5        U R                  S[        SS9  U R                  SSSSS9  U R                  S	S
SSS9  U R                  SSSSS9  U R                  S[        R
                  " SS90 SS[        R                  S9  g)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.
RECOMMENDATIONz1Recommendation id which will be marked as FAILED.)typehelpz
--locationLOCATIONTz	Location.)metavarrequiredr   z--recommenderRECOMMENDERzRecommender of recommendation.z--etagETAGzEtag of a recommendation.z--state-metadata   )
min_lengthzXState metadata for recommendation, in format of --state-metadata=key1=value1,key2=value2z	KEY=VALUE)r   defaultr   r   actionN)r	   AddParentFlagsToParseradd_argumentstrr   ArgDictStoreOnceAction)parsers    6lib/surface/recommender/recommendations/mark_failed.pyArgsMarkFailed.Args.   s     
  (
@  B j4k  K
-	  /
 (	  *
   A.g**  ,    c                     [         R                  " U R                  5       5      n[        R                  " U5      nUR                  X1R                  UR                  5      $ )zRun 'gcloud recommender recommendations mark-failed'.

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

Returns:
  The recommendations after being marked as failed.
)r   CreateClientReleaseTrackr	   GetRecommendationNamer   state_metadataetag)selfargsclientnames       r!   RunMarkFailed.RunO   sJ     (():):)<=F&&t,DT#6#6		BBr$    N)__name__
__module____qualname____firstlineno____doc__DETAILED_HELPdetailed_helpstaticmethodr"   r/   __static_attributes__r1   r$   r!   r   r   $   s'    
  -, ,@Cr$   r   N)r6   
__future__r   r   r   "googlecloudsdk.api_lib.recommenderr   googlecloudsdk.callioper   r   &googlecloudsdk.command_lib.recommenderr	   r7   ReleaseTracksr'   ALPHABETAGACommandr   r1   r$   r!   <module>rD      s    4 &  ' = / ( 8 	 D%%++T->->-C-C%%((*5C 5C*5Cr$   