ó
h
\c           @   sR   d  d l  m Z d e f d     YZ d   Z d   Z d e f d     YZ d S(	   i˙˙˙˙(   t   dequet   Pluginc           B   s    e  Z d  Z d   Z d   Z RS(   s   Base pluginc         C   s
   | | f S(   sĆ   Override to update the envelope or http headers when receiving a
        message.

        :param envelope: The envelope as XML node
        :param http_headers: Dict with the HTTP headers

        (    (   t   selft   envelopet   http_headerst	   operation(    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   ingress   s    c         C   s
   | | f S(   sK  Override to update the envelope or http headers when sending a
        message.

        :param envelope: The envelope as XML node
        :param http_headers: Dict with the HTTP headers
        :param operation: The associated Operation instance
        :param binding_options: Binding specific options for the operation

        (    (   R   R   R   R   t   binding_options(    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   egress   s    
(   t   __name__t
   __module__t   __doc__R   R   (    (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyR      s   	
c         C   sQ   xD |  j  D]9 } | j | | | |  } | d  k	 r
 | \ } } q
 q
 W| | f S(   N(   t   pluginsR   t   None(   t   clientR   R   R   R   t   plugint   result(    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   apply_egress   s    c         C   sN   xA |  j  D]6 } | j | | |  } | d  k	 r
 | \ } } q
 q
 W| | f S(   N(   R   R   R   (   R   R   R   R   R   R   (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   apply_ingress(   s
    t   HistoryPluginc           B   sD   e  Z d  d  Z e d    Z e d    Z d   Z d   Z RS(   i   c         C   s   t  g  |  |  _ d  S(   N(   R    t   _buffer(   R   t   maxlen(    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   __init__2   s    c         C   s   |  j  d } | r | d Sd  S(   Ni˙˙˙˙t   sent(   R   (   R   t   last_tx(    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt	   last_sent5   s    c         C   s   |  j  d } | r | d Sd  S(   Ni˙˙˙˙t   received(   R   (   R   R   (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   last_received;   s    c         C   s)   |  j  d } i | d 6| d 6| d <d  S(   Ni˙˙˙˙R   R   R   (   R   (   R   R   R   R   R   (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyR   A   s    c         C   s0   |  j  j i d  d 6i | d 6| d 6d 6 d  S(   NR   R   R   R   (   R   t   appendR   (   R   R   R   R   R   (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyR   H   s
    (   R	   R
   R   t   propertyR   R   R   R   (    (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyR   1   s
   	N(   t   collectionsR    t   objectR   R   R   R   (    (    (    sA   /data/av2000/b2b/venv/lib/python2.7/site-packages/zeep/plugins.pyt   <module>   s   	
		