o
    i                     @   s   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l	m
Z
 d dlmZ d d	lmZ d d
lmZ ede  defddZdeeef fddZedd Zdd Zdd Zdd Zdd ZdS )    N)config)Pinunwrap)with_traced_module)wrap)	SpanTypes)	COMPONENT)get_argument_value)traceraiohttp_jinja2returnc                   C   s   t tddS )N__version__ )getattrr    r   r   a/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/contrib/internal/aiohttp_jinja2/patch.pyget_version   s   r   c                   C   s   ddiS )Nr   z>=1.5.0r   r   r   r   r   _supported_versions   s   r   c                 C   s   t ||dd}t ||dd}i }d|v r|d |d< | j|jfi |}	t|	jdd}
d|
|f }tjd	tjd
}|	t
tjj |	d	| ||i |W  d    S 1 sYw   Y  d S )Nr   template_name   requestapp_keypackage_pathr   z%s/%szaiohttp.template)	span_type)r
   get_envappr   loaderr   tracer   TEMPLATE_set_tag_strr	   r   r   integration_name)r   pinfuncinstanceargskwargsr   r   get_env_kwargsenvtemplate_prefixtemplate_metaspanr   r   r   traced_render_template   s   $r,   c                 C   s    t  |  tddt|  d S )Nr   render_template)r   ontor   r,   r   r   r   r   _patch2   s   r0   c                  C   s*   dd l } t| ddrd S t|  d| _d S )Nr   _datadog_patchFT)r   r   r0   r1   r/   r   r   r   patch7   
   
r2   c                 C   s   t | d d S )Nr-   r   r/   r   r   r   _unpatchB   s   r4   c                  C   s*   dd l } t| ddsd S t|  d| _d S )Nr   r1   F)r   r   r4   r1   r/   r   r   r   unpatchF   r3   r5   )r   ddtracer   ddtrace._trace.pinr   $ddtrace.contrib.internal.trace_utilsr   r   r   ddtrace.extr   ddtrace.internal.constantsr	   ddtrace.internal.utilsr
   ddtrace.tracer   _adddictstrr   r   r,   r0   r2   r4   r5   r   r   r   r   <module>   s,    
