
     h                     |    d Z dZ	 ddlmZ ddlmZ n# e$ r ddlmZ  e            ZY nw xY w G d de          ZdS )zObject Utilities.)cached_property    )
_NOT_FOUND)threaded_cached_propertyc                   H     e Zd ZdZd	 fd	Zd
 fd	Zd Zd Zd Zd Z	 xZ
S )r   z"Implementation of Cached property.Nc                     t                                          |           || _        || _        t	          | d          s| j        j        | _        d S d S )Nattrname)super__init___cached_property__set_cached_property__delhasattrfunc__name__r   )selffgetfsetfdel	__class__s       O/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/kombu/utils/objects.pyr
   zcached_property.__init__   sU    

tZ(( 	/ I.DMMM	/ 	/    c                 H    t                                          ||          S N)r	   __get__)r   instanceownerr   s      r   r   zcached_property.__get__   s     wwx///r   c                     || S | j         5  | j        |                     ||          }|j        }||| j        <   d d d            d S # 1 swxY w Y   d S r   )lockr   __dict__r   )r   r   valuecaches       r   __set__zcached_property.__set__    s    KY 	) 	)z%

8U33%E#(E$- 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   /AAAc                     || S | j         5  |j                            | j        t                    }| j        r|t          ur|                     ||           d d d            d S # 1 swxY w Y   d S r   )r   r   popr   r   r   )r   r   r   s      r   
__delete__zcached_property.__delete__+   s    KY 	, 	,%))$-DDEz ,e:55

8U+++		, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s   AA%%A),A)c                 D    |                      | j        || j                  S r   )r   r   r   )r   r   s     r   setterzcached_property.setter5   s    ~~ditz:::r   c                 D    |                      | j        | j        |          S r   )r   r   r   )r   r   s     r   deleterzcached_property.deleter8   s    ~~diT:::r   )NNNr   )r   
__module____qualname____doc__r
   r   r!   r$   r&   r(   __classcell__)r   s   @r   r   r      s        ,,/ / / / / /0 0 0 0 0 0
	) 	) 	), , ,; ; ;; ; ; ; ; ; ;r   r   N)	r+   __all__	functoolsr   r   _cached_propertyImportErrorr   object r   r   <module>r3      s     
$$$$$$=======   LLLLLLJJJ	*; *; *; *; *;& *; *; *; *; *;s    ++