Ñò
—ã=Pc           @   s_   d  Z  d d k Z d d k l Z d d k Td d k l Z e e ƒ Z d d d „  ƒ  YZ	 d S(	   sv   
The I{metrics} module defines classes and other resources
designed for collecting and reporting performance metrics.
iÿÿÿÿN(   t	   getLogger(   t   *(   t   modft   Timerc           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   d |  _  d |  _ d  S(   Ni    (   t   startedt   stopped(   t   self(    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   __init__   s    	c         C   s   t  i  ƒ  |  _ d |  _ |  S(   Ni    (   t   timeR   R   (   R   (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   start#   s    	c         C   s'   |  i  d j o t i ƒ  |  _ n |  S(   Ni    (   R   R   R   (   R   (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   stop(   s    c         C   s   |  i  |  i S(   N(   R   R   (   R   (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   duration-   s    c         C   s¼   |  i  d j o d S|  i  d j o |  i d j o d |  i  S|  i ƒ  } d „  } | d j  o | d } d | S| d j  o t | ƒ } d	 | | ƒ St | d ƒ } d
 | | ƒ S(   Ni    s   not-runnings   started: %d (running)c         S   s   |  d  |  d d f S(   i   i    iè  (    (   t   m(    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   <lambda>6   s    i   iè  s   %d (ms)i<   s   %d.%.3d (seconds)s   %d.%.3d (minutes)(   R   R   R   R   (   R   R   t   jmodt   msR   (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   __str__0   s     	
	(   t   __name__t
   __module__R   R	   R
   R   R   (    (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyR      s
   				(    (
   t   __doc__R   t   loggingR    t   sudst   mathR   R   t   logR   (    (    (    sK   /usr/local/lib/python2.6/dist-packages/suds-0.3.7-py2.6.egg/suds/metrics.pyt   <module>   s   
