ó
#¶cc           @   s•   d  Z  d d l Z d d l m Z d d l Z d d l m Z d d l m Z d d l m Z d d l	 m
 Z
 d d l m Z d	 d d
 „  ƒ  YZ d S(   s;   Mixin class with list-digest handling methods and settings.iÿÿÿÿN(   t   ST_SIZE(   t   mm_cfg(   t   Utils(   t   Errors(   t   ToDigest(   t   _t   Digesterc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s‘   t  j |  _ t  j |  _ t  j |  _ t  j |  _ t  j	 |  _
 d |  _ t  j |  _ t  j |  _ t  j |  _ i  |  _ i  |  _ d |  _ d |  _ d  S(   Ni   i    (   R   t   DEFAULT_DIGESTABLEt
   digestablet   DEFAULT_DIGEST_IS_DEFAULTt   digest_is_defaultt   DEFAULT_MIME_IS_DEFAULT_DIGESTt   mime_is_default_digestt   DEFAULT_DIGEST_SIZE_THRESHHOLDt   digest_size_threshholdt   DEFAULT_DIGEST_SEND_PERIODICt   digest_send_periodict   next_post_numbert   DEFAULT_DIGEST_HEADERt   digest_headert   DEFAULT_DIGEST_FOOTERt   digest_footert   DEFAULT_DIGEST_VOLUME_FREQUENCYt   digest_volume_frequencyt   one_last_digestt   digest_memberst   next_digest_numbert   digest_last_sent_at(   t   self(    (    s$   /opt/osstech/lib/mailman/Digester.pyt   InitVars!   s    				c         C   s¸   t  j j |  j ƒ  d ƒ } yj zO d  } t  j | ƒ t d k rl t | ƒ } t j	 |  | ƒ t  j
 | ƒ n  Wd  | rƒ | j ƒ  n  XWn, t k
 r³ } | j t j k r¯ ‚  n  d SXd S(   Ns   digest.mboxi    i   (   t   ost   patht   joint   fullpatht   Nonet   statR    t   openR   t   send_digestst   unlinkt   closet   OSErrort   errnot   ENOENT(   R   t
   digestmboxt   mboxfpt   e(    (    s$   /opt/osstech/lib/mailman/Digester.pyt   send_digest_now2   s     c         C   s   |  j  d 7_  d |  _ d  S(   Ni   (   t   volumeR   (   R   (    (    s$   /opt/osstech/lib/mailman/Digester.pyt   bump_digest_volumeG   s    (   t   __name__t
   __module__R   R.   R0   (    (    (    s$   /opt/osstech/lib/mailman/Digester.pyR       s   		(    (   t   __doc__R   R#   R    R)   t   MailmanR   R   R   t   Mailman.HandlersR   t   Mailman.i18nR   R   (    (    (    s$   /opt/osstech/lib/mailman/Digester.pyt   <module>   s   