File: //home/arjun/projects/env/lib/python3.10/site-packages/aiohttp/__pycache__/tracing.cpython-310.pyc
o
+we0; � @ s� d dl mZ d dlmZmZmZmZmZmZ d dl Z d dl
mZ d dlm
Z
d dlmZ ddlmZ erJdd lmZ ed
dd�ZG d
d� dee �ZdZG dd� d�Ze jdddd�G dd� d��Ze jdddd�G dd� d��Ze jdddd�G dd� d��Ze jdddd�G dd� d��Ze jdddd�G dd� d��Ze jdddd�G dd� d��Ze jdddd�G dd � d ��Ze jdddd�G d!d"� d"��Z e jdddd�G d#d$� d$��Z!e jdddd�G d%d&� d&��Z"e jdddd�G d'd(� d(��Z#e jdddd�G d)d*� d*��Z$e jdddd�G d+d,� d,��Z%e jdddd�G d-d.� d.��Z&e jdddd�G d/d0� d0��Z'e jdddd�G d1d2� d2��Z(G d3d4� d4�Z)dS )5� )�SimpleNamespace)�
TYPE_CHECKING� Awaitable�Optional�Protocol�Type�TypeVarN)�Signal)�CIMultiDict)�URL� )�ClientResponse)�
ClientSession�_ParamT_contraT)�
contravariantc @ s* e Zd Zdedededed fdd�ZdS )�_SignalCallback�_SignalCallback__client_session�!_SignalCallback__trace_config_ctx�_SignalCallback__params�returnNc C s d S �N� )�selfr r r r r �H/home/arjun/projects/env/lib/python3.10/site-packages/aiohttp/tracing.py�__call__ s z_SignalCallback.__call__)�__name__�
__module__�__qualname__r r r r r r r r r r s ����r )�TraceConfig�TraceRequestStartParams�TraceRequestEndParams�TraceRequestExceptionParams� TraceConnectionQueuedStartParams�TraceConnectionQueuedEndParams� TraceConnectionCreateStartParams�TraceConnectionCreateEndParams�TraceConnectionReuseconnParams�TraceDnsResolveHostStartParams�TraceDnsResolveHostEndParams�TraceDnsCacheHitParams�TraceDnsCacheMissParams�TraceRequestRedirectParams�TraceRequestChunkSentParams� TraceResponseChunkReceivedParams�TraceRequestHeadersSentParamsc @ s^ e Zd ZdZefdee ddfdd�Z d<dee defdd �Zd=d
d�Z e
d>d
d��Ze
d?dd��Ze
d@dd��Z
e
dAdd��Ze
dBdd��Ze
dCdd��Ze
dDdd ��Ze
!dEd"d#��Ze
$dFd%d&��Ze
'dGd(d)��Ze
*dHd+d,��Ze
-dId.d/��Ze
0dJd1d2��Ze
dKd4d5��Ze
dLd7d8��Ze
9dMd:d;��ZdS )Nr zFFirst-class used to trace requests launched via ClientSession objects.�trace_config_ctx_factoryr Nc C s� t | �| _t | �| _t | �| _t | �| _t | �| _t | �| _t | �| _t | �| _t | �| _ t | �| _
t | �| _t | �| _t | �| _
t | �| _t | �| _t | �| _|| _d S r )r �_on_request_start�_on_request_chunk_sent�_on_response_chunk_received�_on_request_end�_on_request_exception�_on_request_redirect�_on_connection_queued_start�_on_connection_queued_end�_on_connection_create_start�_on_connection_create_end�_on_connection_reuseconn�_on_dns_resolvehost_start�_on_dns_resolvehost_end�_on_dns_cache_hit�_on_dns_cache_miss�_on_request_headers_sent�_trace_config_ctx_factory)r r/ r r r �__init__2 sD ����������������
zTraceConfig.__init__�trace_request_ctxc C s | j |d�S )z&Return a new trace_config_ctx instance)rB )r@ )r rB r r r �trace_config_ctxh s zTraceConfig.trace_config_ctxc C s� | j �� | j�� | j�� | j�� | j�� | j�� | j�� | j�� | j �� | j
�� | j�� | j�� | j
�� | j�� | j�� | j�� d S r )r0 �freezer1 r2 r3 r4 r5 r6 r7 r8 r9 r: r; r<