o
    `šj×  ã                   @   s4   d dl mZmZ G dd„ deƒZG dd„ deƒZdS )é    )ÚABCÚabstractmethodc                   @   s   e Zd ZdZedd„ ƒZdS )ÚAbstractMeasurablez8A measurable quantity that can be registered as a metricc                 C   s   dS )a,  
        Measure this quantity and return the result

        Arguments:
            config (MetricConfig): The configuration for this metric
            now (int): The POSIX time in milliseconds the measurement
                is being taken

        Returns:
            The measured value
        N© ©ÚselfÚconfigÚnowr   r   úV/home/djax/ivt_ai_plugin/venv/lib/python3.10/site-packages/kafka/metrics/measurable.pyÚmeasure   s   zAbstractMeasurable.measureN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r
   r      s    r   c                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚAnonMeasurablec                 C   s
   || _ d S ©N)Ú_measure_fn)r   Ú
measure_fnr   r   r
   Ú__init__   s   
zAnonMeasurable.__init__c                 C   s   t |  ||¡ƒS r   )Úfloatr   r   r   r   r
   r      s   zAnonMeasurable.measureN)r   r   r   r   r   r   r   r   r
   r      s    r   N)Úabcr   r   r   r   r   r   r   r
   Ú<module>   s    