
    Vh                       d dl mZ  G d de      Z G d de      Z G d de      Z G d d	e      Z G d
 de      Z G d de      Z G d de      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d  d!e      Z G d" d#e      Z G d$ d%e      Zy&)'    )annotationsc                      e Zd ZdZy)AnsibleFallbackNotFoundz Fallback validator was not foundN__name__
__module____qualname____doc__     K/home/dcms/DCMS/lib/python3.12/site-packages/ansible/module_utils/errors.pyr   r      s    *r   r   c                  2     e Zd ZdZ fdZed        Z xZS )AnsibleValidationErrorz%Single argument spec validation errorc                :    t         t        |   |       || _        y N)superr   __init__error_message)selfmessage	__class__s     r   r   zAnsibleValidationError.__init__   s    $d4W=$Hr   c                     | j                   d   S )z:The error message passed in when the exception was raised.r   )argsr   s    r   msgzAnsibleValidationError.msg   s     yy|r   )r   r   r	   r
   r   propertyr   __classcell__)r   s   @r   r   r      s     /I
  r   r   c                  V    e Zd ZdZddZd Zd Zd Zed        Z	ed        Z
d	 Zd
 Zy)AnsibleValidationErrorMultiplez(Multiple argument spec validation errorsNc                ,    |r|d d  | _         y g | _         y r   errorsr   r"   s     r   r   z'AnsibleValidationErrorMultiple.__init__   s    #)fQiF 02Fr   c                     | j                   |   S r   r!   r   keys     r   __getitem__z*AnsibleValidationErrorMultiple.__getitem__!   s    {{3r   c                "    || j                   |<   y r   r!   )r   r&   values      r   __setitem__z*AnsibleValidationErrorMultiple.__setitem__$   s     Cr   c                    | j                   |= y r   r!   r%   s     r   __delitem__z*AnsibleValidationErrorMultiple.__delitem__'   s    KKr   c                :    | j                   d   j                  d   S )z5The first message from the first error in ``errors``.r   )r"   r   r   s    r   r   z"AnsibleValidationErrorMultiple.msg*   s     {{1~""1%%r   c                T    | j                   D cg c]  }|j                   c}S c c}w )z2:class:`list` of each error message in ``errors``.)r"   r   )r   errs     r   messagesz'AnsibleValidationErrorMultiple.messages/   s      $(;;/C///s   %c                :    | j                   j                  |       y)znAppend a new error to ``self.errors``.

        Only :class:`AnsibleValidationError` should be added.
        N)r"   append)r   errors     r   r2   z%AnsibleValidationErrorMultiple.append4   s     	5!r   c                :    | j                   j                  |       y)zhAppend each item in ``errors`` to ``self.errors``. Only :class:`AnsibleValidationError` should be added.N)r"   extendr#   s     r   r5   z%AnsibleValidationErrorMultiple.extend<   s    6"r   r   )r   r   r	   r
   r   r'   r*   r,   r   r   r0   r2   r5   r   r   r   r   r      sL    2G ! & & 0 0"#r   r   c                      e Zd ZdZy)
AliasErrorzError handling aliasesNr   r   r   r   r7   r7   A   s     r   r7   c                      e Zd ZdZy)ArgumentTypeErrorzError with parameter typeNr   r   r   r   r9   r9   E   s    #r   r9   c                      e Zd ZdZy)ArgumentValueErrorzError with parameter valueNr   r   r   r   r;   r;   I   s    $r   r;   c                      e Zd ZdZy)DeprecationErrorz'Error processing parameter deprecationsNr   r   r   r   r=   r=   M   s    1r   r=   c                      e Zd ZdZy)ElementErrorzError when validating elementsNr   r   r   r   r?   r?   Q       (r   r?   c                      e Zd ZdZy)MutuallyExclusiveErrorz+Mutually exclusive parameters were suppliedNr   r   r   r   rB   rB   U   s    5r   rB   c                      e Zd ZdZy)
NoLogErrorzError converting no_log valuesNr   r   r   r   rD   rD   Y   r@   r   rD   c                      e Zd ZdZy)RequiredByErrorz;Error with parameters that are required by other parametersNr   r   r   r   rF   rF   ]   s    Er   rF   c                      e Zd ZdZy)RequiredDefaultErrorz1A required parameter was assigned a default valueNr   r   r   r   rH   rH   a   s    ;r   rH   c                      e Zd ZdZy)RequiredErrorzMissing a required parameterNr   r   r   r   rJ   rJ   e   s    &r   rJ   c                      e Zd ZdZy)RequiredIfErrorz,Error with conditionally required parametersNr   r   r   r   rL   rL   i   s    6r   rL   c                      e Zd ZdZy)RequiredOneOfErrorz4Error with parameters where at least one is requiredNr   r   r   r   rN   rN   m   s    >r   rN   c                      e Zd ZdZy)RequiredTogetherErrorz0Error with parameters that are required togetherNr   r   r   r   rP   rP   q   s    :r   rP   c                      e Zd ZdZy)SubParameterTypeErrorzIncorrect type for subparameterNr   r   r   r   rR   rR   u   s    )r   rR   c                      e Zd ZdZy)UnsupportedErrorz$Unsupported parameters were suppliedNr   r   r   r   rT   rT   y   s    .r   rT   N)
__future__r   	Exceptionr   r   r   r7   r9   r;   r=   r?   rB   rD   rF   rH   rJ   rL   rN   rP   rR   rT   r   r   r   <module>rW      s   
 #+i +Y $#%; $#N!' !$. $%/ %2- 2)) )63 6)' )F, F<1 <'* '7, 7?/ ?;2 ;*2 */- /r   