
                         j    S r SSKJr  SSKJr  SSKJr  SSKJr  S r	SS jr
S rS	 rSS
 jrS rS rg)zHFlags and helpers for the Cloud NetApp Files Volume QuotaRules commands.    )flags)	arg_utils)labels_util)concept_parsersc                 T    [         R                  " U UR                  R                  S9$ )zReturns the Choice Enum for Quota Rule Type.

Args:
  choice: The choice for quota rule type as string
  messages: The messages module.

Returns:
  the quota rule type enum.
)choice	enum_type)r   ChoiceToEnum	QuotaRuleTypeValueValuesEnum)r   messagess     Blib/googlecloudsdk/command_lib/netapp/volumes/quota_rules/flags.pyGetQuotaRuleTypeEnumFromArgr      s)     
		""66
     c                     [         R                  R                  S[        R                  " SS9SSS0US9R                  U 5        g )Nz--volumeF)
positionalz(The volume for which quota rule applies.location )flag_name_overridesrequired)r   ConceptParserForResourcer   GetVolumeResourceSpecAddToParser)parserr   s     r   AddQuotaRuleVolumeArgr   *   sF    ++!!U30%r* ,  Kr   c                 4    SnU R                  S[        USS9  g )Nz  String indicating the type of quota rule.
  The supported values are: 'DEFAULT_USER_QUOTA','DEFAULT_GROUP_QUOTA','INDIVIDUAL_USER_QUOTA','INDIVIDUAL_GROUP_QUOTA'
  z--typeTtypehelpr   add_argumentstrr   	help_texts     r   AddQuotaRuleTypeArgr&   4   s*    )
 		  r   c                 2    SnU R                  S[        US9  g )Nzd  The target of the quota rule.
  Identified by a Unix UID/GID, Windows SID, or null for default.
  z--target)r   r    r!   r$   s     r   AddQuotaRuleTargetArgr(   B   s'    )
 	  r   c                 4    SnU R                  S[        UUS9  g )Nz)The disk limit in MiB for the quota rule.z--disk-limit-mibr   )r"   int)r   r   r%   s      r   AddQuotaRuleDiskLimitMibr+   O   s&    9)	  r   c                 R   [         R                  " [        R                  " S5      /5      R	                  U 5        [        U SS9  [        U 5        [        U 5        [        U SS9  [        R                  " U S5        [        R                  " U 5        [        R                  " U 5        g)z#Add args for creating a Quota rule.zThe Quota rule to create.Tr   
Quota ruleN)r   r   r   GetQuotaRulePresentationSpecr   r   r&   r(   r+   AddResourceDescriptionArgAddResourceAsyncFlagr   AddCreateLabelsFlagsr   s    r   AddQuotaRuleCreateArgsr4   \   s~    (()DE! [.f6D1!!&,7V$""6*r   c                 &   [         R                  " [        R                  " S5      /5      R	                  U 5        [        U SS9  [        U SS9  [        R                  " U S5        [        R                  " U 5        [        R                  " U 5        g)z#Add args for updating a Quota rule.zThe Quota rule to update.Tr-   Fr.   N)r   r   r   r/   r   r   r+   r0   r1   r   AddUpdateLabelsFlagsr3   s    r   AddQuotaRuleUpdateArgsr7   j   sn    (()DE! [.6E2!!&,7V$""6*r   N)F)__doc__!googlecloudsdk.command_lib.netappr   $googlecloudsdk.command_lib.util.apisr   $googlecloudsdk.command_lib.util.argsr   (googlecloudsdk.command_lib.util.conceptsr   r   r   r&   r(   r+   r4   r7    r   r   <module>r>      s:     O 3 : < D
 
+	+r   