î
yË X  ã               @   sV   d  d l  m Z d  d l m Z m Z Gd d „  d e ƒ Z Gd d „  d e ƒ Z d S)é    )ÚRequest)ÚSocketUnreaderÚIterUnreaderc               @   s@   e  Z d  Z d Z d d „  Z d d „  Z d d „  Z e Z d S)ÚParserNc             C   sO   | |  _  t | d ƒ r* t | ƒ |  _ n t | ƒ |  _ d  |  _ d |  _ d  S)NÚrecvr   )ÚcfgÚhasattrr   Úunreaderr   ÚmesgÚ	req_count)Úselfr   Úsource© r   úD/home/ubuntu/projects/ifolica/build/gunicorn/gunicorn/http/parser.pyÚ__init__   s    		zParser.__init__c             C   s   |  S)Nr   )r   r   r   r   Ú__iter__   s    zParser.__iter__c             C   s³   |  j  r$ |  j  j ƒ  r$ t ƒ  ‚ n  |  j  rg |  j  j j d ƒ } x" | rc |  j  j j d ƒ } qE Wn  |  j d 7_ |  j |  j |  j |  j ƒ |  _  |  j  s¬ t ƒ  ‚ n  |  j  S)Ni    é   )	r
   Zshould_closeÚStopIterationÚbodyÚreadr   Ú
mesg_classr   r	   )r   Údatar   r   r   Ú__next__   s    		!	zParser.__next__)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   Únextr   r   r   r   r   
   s
   r   c               @   s   e  Z d  Z e Z d S)ÚRequestParserN)r   r   r   r   r   r   r   r   r   r   1   s   r   N)Zgunicorn.http.messager   Zgunicorn.http.unreaderr   r   Úobjectr   r   r   r   r   r   Ú<module>   s   '