HEX
Server: nginx/1.28.3
System: Linux lightweb-s1 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64
User: dawonefr-98 (1071)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/uaclient/api/__pycache__/__init__.cpython-310.pyc
o

Uٵg	�@sfddlZddlZddlmZe�d��e���Gdd�dejd�ZGdd�de�Z	Gd	d
�d
�Z
dS)�N)�Optional�	ubuntuproc
@s4eZdZejdededeedeefdd��ZdS)�AbstractProgress�total_steps�
done_steps�previous_step_message�current_step_messagecC�dS�N���selfrrrrrr�7/usr/lib/python3/dist-packages/uaclient/api/__init__.py�progress
s	zAbstractProgress.progressN)	�__name__�
__module__�__qualname__�abc�abstractmethod�intr�strrrrrrr	s����r)�	metaclassc	@s.eZdZdededeedeefdd�ZdS)�NullProgressrrrrcCr	r
rrrrrrszNullProgress.progressN)rrrrrrrrrrrrs����rc@sTeZdZddeefdd�Zdefdd�Zdd	�Zdd
efdd�Z	d
e
fdd�ZdS)�ProgressWrapperN�progress_objectcCs.|dur||_nt�|_d|_d|_d|_dS)Nr���)rrrrr)r
rrrr�__init__#s
zProgressWrapper.__init__�messagecCs2|jj|j|j|j|d�||_|jd7_dS)N�rrrr�)rrrrr)r
rrrrr,s�zProgressWrapper.progresscCs&|j|_|jj|j|j|jdd�dS)Nr)rrrrr�r
rrr�finish6s
�zProgressWrapper.finish�eventcCs"t|jd�r|j�||�dSdS)z�
        This is our secret event system. We use it internally to insert prompts
        and extra messages in the middle of operations at certain points.
        We don't consider this stable enough to expose to the public API.
        �	_on_eventN)�hasattrrr#)r
r"�payloadrrr�emit?s�zProgressWrapper.emit�returncCst|jd�r
|jjSdS)N�is_interactiveF)r$rr(r rrrr(HszProgressWrapper.is_interactiver
)rrrrrrrrr!r&�boolr(rrrrr"s	
		r)r�logging�typingr�	getLogger�
addHandler�NullHandler�ABCMetarrrrrrr�<module>s