
    G                         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 r	S r
S	 rS
 rS rS rS rS rS rSS jrSS jrS rS rS rS rS rg)z:Shared resource flags for `gcloud container aws` commands.    )concepts)deps)concept_parsers)
properties)	resourcesc                 R    [         R                  R                  U R                  SS9$ N+gkemulticloud.projects.locations.operations
collection)r   REGISTRYParseRelativeNamename)ops    =lib/googlecloudsdk/command_lib/container/aws/resource_args.pyGetOperationResourcer      s*    				-	-ggG 
. 
     c                  ,    [         R                  " SSS9$ )Nclusterzcluster of the {resource}.r   	help_textr    ResourceParameterAttributeConfig r   r   AwsClusterAttributeConfigr      s    		2	2 <
 r   c                  ,    [         R                  " SSS9$ )N	node_poolznode pool of the {resource}.r   r   r   r   r   AwsNodePoolAttributeConfigr   %   s    		2	2"@
 r   c                      [         R                  " SS[        R                  " [        R
                  R                  R                  5      /S9$ )z.Gets Google Cloud location resource attribute.locationz)Google Cloud location for the {resource}.)r   r   fallthroughs)r   r   r   PropertyFallthroughr   VALUEScontainer_awsr    r   r   r   LocationAttributeConfigr%   +   s@    		2	2;

"
":#4#4#B#B#K#K
L
 r   c                  ,    [         R                  " SSS9$ )N	operationzOperation for the {resource}.r   r   r   r   r   OperationAttributeConfigr(   6   s    		2	2"A
 r   c                  n    [         R                  " SS[        5       [        5       [         R                  S9$ )N,gkemulticloud.projects.locations.awsClustersr   )resource_nameawsClustersIdlocationsId
projectsId)r   ResourceSpecr   r%    DEFAULT_PROJECT_ATTRIBUTE_CONFIGr   r   r   GetAwsClusterResourceSpecr1   <   s0    			4-/)+::
 r   c                  \    [         R                  " SS[        5       [         R                  S9$ )Nr
   r'   r+   r-   r.   r   r/   r%   r0   r   r   r   GetOperationResourceSpecr5   F   s*    			3)+::	
 r   c            	          [         R                  " SS[        5       [        5       [	        5       [         R
                  S9$ )N9gkemulticloud.projects.locations.awsClusters.awsNodePoolsr   )r+   awsNodePoolsIdr,   r-   r.   )r   r/   r   r   r%   r0   r   r   r   GetAwsNodePoolResourceSpecr9   O   s6    			A/1-/)+::
 r   c                  \    [         R                  " SS[        5       [         R                  S9$ )Nz gkemulticloud.projects.locationsr    r3   r4   r   r   r   GetLocationResourceSpecr;   Z   s*    			()+::	
 r   c                     U(       a  SOSn[         R                  R                  U[        5       SR	                  U5      SS9R                  U 5        g)zAdds a resource argument for an AWS cluster.

Args:
  parser: The argparse parser to add the resource arg to.
  verb: str, the verb to describe the resource, such as 'to update'.
  positional: bool, whether the argument is positional or not.
r   z	--clusterzcluster {}.TrequiredN)r   ConceptParserForResourcer1   formatAddToParserparserverb
positionalr   s       r   AddAwsClusterResourceArgrG   c   sL     !k$++
!4 	 , 
 Kr   c                     U(       a  SOSn[         R                  R                  U[        5       SR	                  U5      SS9R                  U 5        g)zAdds a resource argument for an AWS node pool.

Args:
  parser: The argparse parser to add the resource arg to.
  verb: str, the verb to describe the resource, such as 'to update'.
  positional: bool, whether the argument is positional or not.
r   z--node-poolznode pool {}.Tr=   N)r   r?   r@   r9   rA   rB   rC   s       r   AddAwsNodePoolResourceArgrI   t   sL     #$++
 "T"	 , 
 Kr   c                     [         R                  R                  S[        5       SR	                  U5      SS9R                  U 5        g)zAdds a resource argument for Google Cloud location.

Args:
  parser: The argparse parser to add the resource arg to.
  verb: str, the verb to describe the resource, such as 'to update'.
z
--locationzGoogle Cloud location {}.Tr=   N)r   r?   r@   r;   rA   rB   rD   rE   s     r   AddLocationResourceArgrL      sC     ++!((.	 , 
 Kr   c                     [         R                  R                  S[        5       SR	                  U5      SS9R                  U 5        g)zAdds a resource argument for operation in AWS.

Args:
  parser: The argparse parser to add the resource arg to.
  verb: str, the verb to describe the resource, such as 'to update'.
operation_idzoperation {}.Tr=   N)r   r?   r@   r5   rA   rB   rK   s     r   AddOperationResourceArgrO      sC     ++ T"	 , 
 Kr   c                     [         R                  R                  U R                  R                  R                  5       R                  5       SS9$ )Nr*   r   )r   r   r   CONCEPTSr   ParseRelativeNameargss    r   ParseAwsClusterResourceArgrV      sB    				-	-
mm!!#002? 
. 
 r   c                     [         R                  R                  U R                  R                  R                  5       R                  5       SS9$ )Nr7   r   )r   r   r   rQ   r   rR   rS   rT   s    r   ParseAwsNodePoolResourceArgrX      sB    				-	-
mm##%224L 
. 
 r   c                     [         R                  R                  U R                  R                  R                  5       R                  5       SS9$ r	   )r   r   r   rQ   rN   rR   rS   rT   s    r   ParseOperationResourceArgrZ      sB    				-	-
mm  &&(557> 
. 
 r   N)T)__doc__ googlecloudsdk.calliope.conceptsr   r   (googlecloudsdk.command_lib.util.conceptsr   googlecloudsdk.corer   r   r   r   r   r%   r(   r1   r5   r9   r;   rG   rI   rL   rO   rV   rX   rZ   r   r   r   <module>r_      sl    A 6 1 D * )""r   