U
    dª/e  ã                   @   s,   d dl mZ d dlmZ G dd„ deƒZdS )é   )Údefines)Úread_varintc                       s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚProgressc                    s0   d| _ d| _d| _d| _d| _tt| ƒ ¡  d S )Né    )ÚrowsÚbytesÚ
total_rowsÚwritten_rowsÚwritten_bytesÚsuperr   Ú__init__)Úself©Ú	__class__© ú>/tmp/pip-unpacked-wheel-mds_o03w/clickhouse_driver/progress.pyr      s    zProgress.__init__c                 C   sN   t |ƒ| _t |ƒ| _|}|tjkr,t |ƒ| _|tjkrJt |ƒ| _t |ƒ| _d S ©N)	r   r   r   r   Z-DBMS_MIN_REVISION_WITH_TOTAL_ROWS_IN_PROGRESSr   Z(DBMS_MIN_REVISION_WITH_CLIENT_WRITE_INFOr	   r
   )r   Zserver_revisionZfinÚrevisionr   r   r   Úread   s    





zProgress.readc                 C   sT   |  j |j 7  _ |  j|j7  _|  j|j7  _|  j|j7  _|  j|j7  _d S r   )r   r   r   r	   r
   )r   Zanother_progressr   r   r   Ú	increment   s
    zProgress.increment)Ú__name__Ú
__module__Ú__qualname__r   r   r   Ú__classcell__r   r   r   r   r      s   	r   N)Ú r   Zvarintr   Úobjectr   r   r   r   r   Ú<module>   s   