o
    BDi                     @   s   d dl mZ d dlmZ d dlmZmZ zd dlmZ d dl	m
Z
 er1d dlmZ d dl	mZmZ W n ey=   edw G d	d
 d
eZG dd de
ZdS )    )TYPE_CHECKING)add_feature_flag)DidNotEnableIntegration)api)Hook)FlagEvaluationDetails)HookContext	HookHintszOpenFeature is not installedc                   @   s   e Zd ZdZedd ZdS )OpenFeatureIntegrationopenfeaturec                   C   s   t jt gd d S )N)hooks)r   	add_hooksOpenFeatureHook r   r   \/var/www/Datamplify/venv/lib/python3.10/site-packages/sentry_sdk/integrations/openfeature.py
setup_once   s   z!OpenFeatureIntegration.setup_onceN)__name__
__module____qualname__
identifierstaticmethodr   r   r   r   r   r      s    r   c                   @   s   e Zd Zdd Zdd ZdS )r   c                 C   s"   t |jtrt|j|j d S d S N)
isinstancevalueboolr   flag_key)selfhook_contextdetailshintsr   r   r   after      zOpenFeatureHook.afterc                 C   s"   t |jtrt|j|j d S d S r   )r   default_valuer   r   r   )r   r   	exceptionr    r   r   r   error"   r"   zOpenFeatureHook.errorN)r   r   r   r!   r%   r   r   r   r   r      s    r   N)typingr   sentry_sdk.feature_flagsr   sentry_sdk.integrationsr   r   r   r   openfeature.hookr   openfeature.flag_evaluationr   r	   r
   ImportErrorr   r   r   r   r   r   <module>   s    
