
    Vh                    z    d dl mZ d dlZd dlmZmZmZmZ d dlm	Z	 d dl
mZmZ d dlmZ d dlmZ  G d d	e      Zy)
    )annotationsN)AnsibleErrorAnsibleAction_AnsibleActionDoneAnsibleActionFail)	to_native)MappingMutableMapping)boolean)
ActionBasec                  $     e Zd ZdZd fd	Z xZS )ActionModuleTc                   d| _         d| _        |
t               }t        t        |   ||      }~| j                  j                  j                  dd      }| j                  j                  j                  d      }| j                  j                  j                  dd       }t        | j                  j                  j                  dd      d	      }	 |r2t        | j                  d
|| j                  j                              i }|r	 | j                  d|      }| j"                  j$                  j'                  | j"                  j$                  j(                  t*        j,                  j/                  |            }
|
|d<   | j1                  ||
       | j3                  | j"                  j$                  j(                  |
f       nI|dk(  rCt5        |t6              s"t        d|j8                  j:                  z        |j=                         D ]  \  }}t5        |t>              s|j                  d      }|j                  d      }|r|r>	 | j                  d|      }| j"                  j$                  j'                  | j"                  j$                  j(                  t*        j,                  j/                  |            }
|
|d<   | j1                  ||
       | j3                  | j"                  j$                  j(                  |
f        ||d<   | j                  j                  |z  }|jA                  | j                  d
||| j                  j                               | j                  j                  s/| jG                  | j"                  j$                  j(                         |S # t        $ r}	t        t!        |	            d }	~	ww xY w# t        $ r}	t        t!        |	            d }	~	ww xY w# tB        $ r%}	|jA                  |	jD                         Y d }	~	d }	~	ww xY w# | j                  j                  s0| jG                  | j"                  j$                  j(                         w w xY w)NTFbody_formatrawbodysrc
remote_srcno)strictzansible.legacy.uri)module_name	task_vars
wrap_async)resultfileszform-multipartz'body must be mapping, cannot be type %scontentfilename)module_argsr   r   )$_supports_async_supports_check_modedictsuperr   run_taskargsgetr   r   _execute_module	async_val_find_needler   r   r   _connection_shell	join_pathtmpdirospathbasename_transfer_file_fixup_perms2
isinstancer	   	__class____name__itemsr
   updater   r   _remove_tmp_path)selftmpr   r   r   r   r   r   kwargsetmp_srcfieldvaluer   r   new_module_argsr4   s                   J/home/dcms/DCMS/lib/python3.12/site-packages/ansible/plugins/action/uri.pyr#   zActionModule.run   s   #$)!I|T.sI>jjoo))-?zz""6*jjoo!!%.TZZ__00tDUS
7	F )0D0DQeOXeieoeoeyey 1E 1{ | | F:++GS9C **11;;D<L<L<S<S<Z<Z\^\c\c\l\lmp\qr 'u##C1""D$4$4$;$;$B$BG#LM 00!$0+ADNND[D[[  %)JJL RLE5%e^< #ii	2G$yy4H#w >#'#4#4Wh#G #..55??((//66((2G )0E*%''':&&(8(8(?(?(F(F'PQ'R( "&v"jjoo6O MM$../CQ`lu  CG  CM  CM  CW  CW.  X  Y ::''%%d&6&6&=&=&D&DEW $ :+IaL99:, ( >/	!==>   	$MM!((##	$ ::''%%d&6&6&=&=&D&DE (su   8O5 N+ D1O5 O#DO5 +	O4OOO5 	O2O--O22O5 5	P#>PP& P##P& &AQ.)NN)r5   
__module____qualname__TRANSFERS_FILESr#   __classcell__)r4   s   @rA   r   r      s    OG G    r   )
__future__r   r.   ansible.errorsr   r   r   r   +ansible.module_utils.common.text.convertersr   'ansible.module_utils.common.collectionsr	   r
   )ansible.module_utils.parsing.convert_boolr   ansible.plugins.actionr   r    rF   rA   <module>rN      s-    # 	 ] ] A K = -K: KrF   