
    hH                         S r SSKrSSKJrJrJrJrJrJr  SSK	J
r
  SSKJr  SSKJr  SSKJrJrJr  SS	KJr  S
r " S S5      rg)zLow level HTTP server.    N)Any	AwaitableCallableDictListOptional   )AbstractStreamWriter)RawRequestMessage)StreamReader)RequestHandler_RequestFactory_RequestHandler)BaseRequest)Serverc                   "   \ rS rSrSSSS.S\S\\   S\S\\R                     S	\
S
S4S jjr\S
\\   4S j5       rS\S\R                   S
S4S jr SS\S\\   S
S4S jjrS\S\S\S\SSS
\4S jrSS jrSS\\   S
S4S jjrS
\4S jrSrg)r      NF)request_factoryhandler_cancellationloophandlerr   r   r   kwargsreturnc                    U=(       d    [         R                  " 5       U l        0 U l        XPl        SU l        Xl        U=(       d    U R                  U l        X0l	        g )Nr   )
asyncioget_running_loop_loop_connections_kwargsrequests_countrequest_handler_make_requestr   r   )selfr   r   r   r   r   s         D/var/www/html/env/lib/python3.13/site-packages/aiohttp/web_server.py__init__Server.__init__   sO     7W557
EG  &.D$2D2D$8!    c                 H    [        U R                  R                  5       5      $ N)listr   keys)r#   s    r$   connectionsServer.connections#   s    D%%**,--r'   	transportc                      X R                   U'   g r)   )r   )r#   r   r.   s      r$   connection_madeServer.connection_made'   s     &/'"r'   excc                    ^ ^ TT R                   ;   a@  TR                  (       a!  TR                  R                  UU 4S j5        g T R                   T	 g g )Nc                 <   > TR                   R                  TS 5      $ r)   )r   pop)fr   r#   s    r$   <lambda>(Server.connection_lost.<locals>.<lambda>2   s    d//33GTBr'   )r   _task_handleradd_done_callback)r#   r   r2   s   `` r$   connection_lostServer.connection_lost,   sH     d'''$$%%77B %%g. (r'   messagepayloadprotocolwritertaskzasyncio.Task[None]c                 0    [        XX4XPR                  5      $ r)   )r   r   )r#   r=   r>   r?   r@   rA   s         r$   r"   Server._make_request7   s     7XtZZPPr'   c                 J    U R                    H  nUR                  5         M     g r)   )r   close)r#   conns     r$   pre_shutdownServer.pre_shutdownA   s    %%DJJL &r'   timeoutc                    ^#    U4S jU R                    5       n[        R                  " U6 I S h  vN   U R                   R                  5         g  N7f)Nc              3   D   >#    U  H  oR                  T5      v   M     g 7fr)   )shutdown).0rF   rI   s     r$   	<genexpr>"Server.shutdown.<locals>.<genexpr>F   s     F4EDw''4Es    )r   r   gatherclear)r#   rI   coross    ` r$   rL   Server.shutdownE   s?     FD4E4EFnne$$$! 	%s   -AA Ac                     [        U 4SU R                  0U R                  D6$ ! [         aX    U R                  R	                  5        VVs0 s H  u  pUS;   d  M  X_M     Os  snnf nnn[        U 4SU R                  0UD6s $ f = f)Nr   )debugaccess_log_class)r   r   r   	TypeErroritems)r#   kvr   s       r$   __call__Server.__call__J   s    		C!$HTZZH4<<HH 	C !LL..00DA55 0F 
 "$BTZZB6BB	Cs!   !$ 'BA"A"!"BB)r   r   r   r   r   r!   r    r)   )r   N)__name__
__module____qualname____firstlineno__r   r   r   boolr   AbstractEventLoopr   r%   propertyr   r   r,   	Transportr0   BaseExceptionr;   r   r   r
   r   r"   rG   floatrL   r[   __static_attributes__ r'   r$   r   r      s8   
 6:%*489 9 "/2	9
 #9 w0019 9 
9& .T.1 . ./%/292C2C/	/ GK	/%	/,4],C	/		/Q"Q Q !	Q
 %Q #Q 
Q"huo " "

C. 
Cr'   r   )__doc__r   typingr   r   r   r   r   r   abcr
   http_parserr   streamsr   web_protocolr   r   r   web_requestr   __all__r   rh   r'   r$   <module>rq      s6      A A % * ! J J $
EC ECr'   