Current File : //usr/lib/python3/dist-packages/uaclient/files/__pycache__/user_config_file.cpython-312.pyc
�

��g���N�ddlZddlZddlmZddlmZddlmZmZm	Z	ddl
mZmZm
Z
mZmZmZddlmZmZddlmZgd�ZGd	�d
e
�ZGd�de�Zej2�Zej6e	j8e��ZGd
�d�Zeej@�Z!y)�N)�Optional)�urlparse)�defaults�event_logger�util)�
BoolDataValue�
DataObject�
EnumDataValue�Field�IntDataValue�StringDataValue)�DataObjectFile�DataObjectFileFormat)�UAFile)�apt_http_proxy�apt_https_proxy�global_apt_http_proxy�global_apt_https_proxy�ua_apt_http_proxy�ua_apt_https_proxy�
http_proxy�https_proxyc��eZdZdZdZdZd�Zy)�LXDGuestAttachEnum�on�off�	availablec��|jS�N)�value)�selfs �A/usr/lib/python3/dist-packages/uaclient/files/user_config_file.py�__str__zLXDGuestAttachEnum.__str__$s���z�z��N)�__name__�
__module__�__qualname__�ON�OFF�	AVAILABLEr#�r$r"rrs��	
�B�
�C��I�r$rc"��eZdZeded��eded��eded��eded��eded��eded��ed	ed��ed
ed��eded��eded��ed
ed��eded��eded��eded��eded��eded��gZ																dde	e
de	e
de	e
de	e
de	e
de	e
d	e	e
d
e	e
de	ede	e
d
e	ede	ede	ede	ede	e
de	ef d�Z
y)�UserConfigDatarF)�requiredrrrrrrr�apt_news�apt_news_url�poll_for_pro_license�polling_error_retry_delay�metering_timer�update_messaging_timer�vulnerability_data_url_prefix�lxd_guest_attachNc���||_||_||_||_||_||_||_||_|	|_|
|_	||_
||_|
|_||_
||_||_yr)rrrrrrrrr/r0r1r2r3r4r5r6)r!rrrrrrrrr/r0r1r2r3r4r5r6s                 r"�__init__zUserConfigData.__init__>s���&-���.���%:��"�&<��#�!2���"4���$���&��� ��
�(���$8��!�)B��&�,���&<��#�-J��*� 0��r$)NNNNNNNNNNNNNNNN)r%r&r'rr
rrr�fieldsr�str�bool�intr8r+r$r"r-r-(s���
���%�@�
���5�A�
�%���G�
�&��%�H�
�!�?�U�C�
�"�O�e�D�
�l�O�e�<�
�m�_�u�=�
�j�-�%�8�
�n�o��>�
�$�m�e�D�
�)�<�%�H�
���u�=�
�&��u�E�
�+�_�u�	
�	� �"4�u�E�%�F�.)-�)-�/3�04�+/�,0�$(�%)�#'�&*�/3�37�(,�04�7;�9=�#"1� ��
�"1�"�#��"1� (��}�	"1�
!)��
�"1�$�C�=�
"1�%�S�M�"1��S�M�"1��c�]�"1��4�.�"1��s�m�"1�'�t�n�"1�$,�C�=�"1�!��
�"1�!)��
�"1� (0��}�!"1�"#�#5�6�#"1r$r-c�n�eZdZejfdefd�Zedefd��Z	dedefd�Z
defd�Zdefd	�Zy
)�UserConfigFileObject�	directoryc
�D�tj}ttt	|t
jj|tj�d��tjd��|_ttt	||d��tjd��|_y)NT)�private)� optional_type_errors_become_nullF)
r�USER_CONFIG_FILErr-r�os�path�join�PRIVATE_SUBDIRr�JSON�_private�_public)r!r?�	file_names   r"r8zUserConfigFileObject.__init__hsy���-�-�	�&���������Y��(?�(?�@��
�

!�%�%�-1�	
��
�&���9�i��7� �%�%�-1�	
��r$�returnc�R�|jj�}|�
t�}|Sr)rJ�readr-)r!�
public_configs  r"rOz"UserConfigFileObject.public_config{s(�����)�)�+�
�� �*�,�M��r$�user_configc���|j�}tD]?}|j|�}|s�t|�}|js
|j
s�;d||<�Atj|�S)Nz
<REDACTED>)�to_dict�PROXY_FIELDS�getr�username�passwordr-�	from_dict)r!rP�redacted_data_dict�fieldr �
parsed_urls      r"�redact_config_dataz'UserConfigFileObject.redact_config_data�sn��)�0�0�2��!�	=�E�&�*�*�5�1�E��%�e�_�
��&�&�*�*=�*=�0<�&�u�-�	=��'�'�(:�;�;r$c��tj�r|jj�}|�|S|jj�}|�|St�Sr)r�we_are_currently_rootrIrNrJr-)r!�private_configrOs   r"rNzUserConfigFileObject.read�sS���%�%�'�!�]�]�/�/�1�N��)�%�%����)�)�+�
��$� � ���r$�contentc��|jj|�|j|�}|jj|�yr)rI�writer[rJ)r!r_�redacted_contents   r"razUserConfigFileObject.write�s8���
�
���G�$��2�2�7�;�������+�,r$N)
r%r&r'r�DEFAULT_DATA_DIRr:r8�propertyr-rOr[rNrar+r$r"r>r>gs_��(0�(A�(A�
�#�
�&��~����
<�)�
<�	�
<� �n� �-�^�-r$r>)"�loggingrD�typingr�urllib.parser�uaclientrrr�uaclient.data_typesrr	r
rrr
�uaclient.files.data_typesrr�uaclient.files.filesrrSrr-�get_event_logger�event�	getLogger�replace_top_level_logger_namer%�LOGr>rcrPr+r$r"�<module>rqs����	��!�1�1���K�'�	�����81�Z�81�v	&��%�%�'���g���:��:�:�8�D�E��4-�4-�n#�8�#<�#<�=�r$