§
    Ìtºf¥*  ã                   ó�  — d dl Z d dlmZ d dlmZ dZ G d„ dej        ¦  «        Z G d„ de¦  «        Z G d	„ d
e¦  «        Z	 G d„ de¦  «        Z
 G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Zee	e
eeedœZ e	ddddd¬¦  «         e
dddddd¬¦  «         eddddd¬¦  «         edddddddd¬¦  «        dœZdS )é    N)Úutil)ÚProtocolError)	ÚRoleFeaturesÚRoleBrokerFeaturesÚRoleSubscriberFeaturesÚRolePublisherFeaturesÚRoleDealerFeaturesÚRoleCallerFeaturesÚRoleCalleeFeaturesÚROLE_NAME_TO_CLASSÚDEFAULT_CLIENT_ROLESc                   ó(   — e Zd ZdZdZd„ Zd„ Zd„ ZdS )r   z,
    Base class for WAMP role features.
    Nc                 ó4   — t          j        | j        ¦  «        S ©N)ÚjsonÚdumpsÚ__dict__)Úselfs    úQ/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/autobahn/wamp/role.pyÚ__str__zRoleFeatures.__str__5   s   € ÝŒz˜$œ-Ñ(Ô(Ð(ó    c                 óæ   — i }| j                              ¦   «         D ]\  }}|�|||<   Œd                     | j        d                     d„ |                     ¦   «         D ¦   «         ¦  «        ¦  «        S )Nz{0}({1})z, c                 ó>   — g | ]\  }}|d z   t          |¦  «        z   ‘ŒS )ú=)Ústr)Ú.0ÚkÚvs      r   ú
<listcomp>z)RoleFeatures.__repr__.<locals>.<listcomp>=   sA   € ð 7_ð 7_ð 7_Ù;?¸1¸að 89¸3±wÅÀQÁÄÑ7Gð 7_ð 7_ð 7_r   )r   ÚitemsÚformatÚROLEÚjoin)r   Úconfigured_optionsr   r   s       r   Ú__repr__zRoleFeatures.__repr__8   s˜   € ØÐØ”M×'Ò'Ñ)Ô)ð 	*ð 	*‰DˆAˆqØˆ}Ø()Ð" 1Ñ%øØ× Ò  ¤¨D¯IªIð 7_ð 7_ØCU×C[ÒC[ÑC]ÔC]ð7_ñ 7_ô 7_ñ -`ô -`ñ aô að 	ar   c           	      ó*  — | j         D ]Š}|                     d¦  «        ss|dk    rmt          | |¦  «        �]t          t          | |¦  «        ¦  «        t          k    r7t          d                     t          | |¦  «        || j        ¦  «        ¦  «        ‚Œ‹d S )NÚ_r"   z1invalid type {0} for feature '{1}' for role '{2}')r   Ú
startswithÚgetattrÚtypeÚboolr   r!   r"   )r   r   s     r   Ú_check_all_boolzRoleFeatures._check_all_bool@   s±   € à”ð 	Dð 	DˆAØ—<’< Ñ$Ô$ð D¨¨fª¨Ý˜4 Ñ#Ô#Ð/µD½ÀÀqÑ9IÔ9IÑ4JÔ4JÍdÒ4RÐ4RÝ'Ð([×(bÒ(bÕcjÐkoÐqrÑcsÔcsÐuvÐx|ô  yBñ  )Cô  )Cñ  Dô  Dð  Døð	Dð 	Dr   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r"   r   r%   r,   © r   r   r   r   -   sZ   € € € € € ðð ð €Dð)ð )ð )ðað að aðDð Dð Dð Dð Dr   r   c                   ó8   — e Zd ZdZdZ	 	 	 	 	 	 	 	 	 	 	 	 	 dd„ZdS )r   z$
    WAMP broker role features.
    ÚbrokerNc                 óä   — || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        |                      ¦   «          d S r   )Úpublisher_identificationÚpublication_trustlevelsÚpattern_based_subscriptionÚsession_meta_apiÚsubscription_meta_apiÚsubscriber_blackwhite_listingÚpublisher_exclusionÚsubscription_revocationÚevent_historyÚpayload_transparencyÚx_acknowledged_event_deliveryÚpayload_encryption_cryptoboxÚevent_retentionr,   )r   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   Úkwargss                  r   Ú__init__zRoleBrokerFeatures.__init__P   s…   € ð )AˆÔ%Ø'>ˆÔ$Ø*DˆÔ'Ø 0ˆÔØ%:ˆÔ"Ø-JˆÔ*Ø#6ˆÔ Ø'>ˆÔ$Ø*ˆÔØ$8ˆÔ!Ø-JˆÔ*Ø,HˆÔ)Ø.ˆÔØ×ÒÑÔÐÐÐr   ©NNNNNNNNNNNNN©r-   r.   r/   r0   r"   rC   r1   r   r   r   r   H   sb   € € € € € ðð ð €Dð +/Ø)-Ø,0Ø"&Ø'+Ø/3Ø%)Ø)-Ø#Ø&*Ø/3Ø.2Ø!%ðð ð ð ð ð r   r   c                   ó,   — e Zd ZdZdZ	 	 	 	 	 	 	 dd„ZdS )r   z(
    WAMP subscriber role features.
    Ú
subscriberNc                 ó�   — || _         || _        || _        || _        || _        || _        || _        |                      ¦   «          d S r   )r5   r6   r7   r<   r=   r>   r@   r,   )	r   r5   r6   r7   r<   r=   r>   r@   rB   s	            r   rC   zRoleSubscriberFeatures.__init__w   sU   € ð )AˆÔ%Ø'>ˆÔ$Ø*DˆÔ'Ø'>ˆÔ$Ø*ˆÔØ$8ˆÔ!Ø,HˆÔ)Ø×ÒÑÔÐÐÐr   )NNNNNNNrE   r1   r   r   r   r   o   sP   € € € € € ðð ð €Dð +/Ø)-Ø,0Ø)-Ø#Ø&*Ø.2ðð ð ð ð ð r   r   c                   ó*   — e Zd ZdZdZ	 	 	 	 	 	 dd„ZdS )r   z'
    WAMP publisher role features.
    Ú	publisherNc                 ó‚   — || _         || _        || _        || _        || _        || _        |                      ¦   «          d S r   )r5   r:   r;   r>   r?   r@   r,   )r   r5   r:   r;   r>   r?   r@   rB   s           r   rC   zRolePublisherFeatures.__init__’   sM   € ð )AˆÔ%Ø-JˆÔ*Ø#6ˆÔ Ø$8ˆÔ!Ø-JˆÔ*Ø,HˆÔ)Ø×ÒÑÔÐÐÐr   ©NNNNNNrE   r1   r   r   r   r   Š   sM   € € € € € ðð ð €Dð +/Ø/3Ø%)Ø&*Ø/3Ø.2ðð ð ð ð ð r   r   c                   ó8   — e Zd ZdZdZ	 	 	 	 	 	 	 	 	 	 	 	 	 dd„ZdS )r	   z$
    WAMP dealer role features.
    ÚdealerNc                 óä   — || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        |                      ¦   «          d S r   )Úcaller_identificationÚcall_trustlevelsÚpattern_based_registrationr8   Úregistration_meta_apiÚshared_registrationÚcall_timeoutÚcall_cancelingÚprogressive_call_resultsÚregistration_revocationr>   Útestament_meta_apir@   r,   )r   rP   rQ   rR   r8   rS   rT   rU   rV   rW   rX   r>   rY   r@   rB   s                  r   rC   zRoleDealerFeatures.__init__«   s„   € ð &;ˆÔ"Ø 0ˆÔØ*DˆÔ'Ø 0ˆÔØ%:ˆÔ"Ø#6ˆÔ Ø(ˆÔØ,ˆÔØ(@ˆÔ%Ø'>ˆÔ$Ø$8ˆÔ!Ø"4ˆÔØ,HˆÔ)Ø×ÒÑÔÐÐÐr   rD   rE   r1   r   r   r	   r	   £   sb   € € € € € ðð ð €Dð (,Ø"&Ø,0Ø"&Ø'+Ø%)Ø"Ø $Ø*.Ø)-Ø&*Ø$(Ø.2ðð ð ð ð ð r   r	   c                   ó*   — e Zd ZdZdZ	 	 	 	 	 	 dd„ZdS )r
   z$
    WAMP caller role features.
    ÚcallerNc                 ó‚   — || _         || _        || _        || _        || _        || _        |                      ¦   «          d S r   )rP   rU   rV   rW   r>   r@   r,   )r   rP   rU   rV   rW   r>   r@   rB   s           r   rC   zRoleCallerFeatures.__init__Ò   sL   € ð &;ˆÔ"Ø(ˆÔØ,ˆÔØ(@ˆÔ%Ø$8ˆÔ!Ø,HˆÔ)Ø×ÒÑÔÐÐÐr   rL   rE   r1   r   r   r
   r
   Ê   sM   € € € € € ðð ð €Dð (,Ø"Ø $Ø*.Ø&*Ø.2ðð ð ð ð ð r   r
   c                   ó2   — e Zd ZdZdZ	 	 	 	 	 	 	 	 	 	 dd„ZdS )r   z$
    WAMP callee role features.
    ÚcalleeNc                 óº   — || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        |  
                    ¦   «          d S r   )rP   rQ   rR   rT   rU   rV   rW   rX   r>   r@   r,   )r   rP   rQ   rR   rT   rU   rV   rW   rX   r>   r@   rB   s               r   rC   zRoleCalleeFeatures.__init__ë   sl   € ð &;ˆÔ"Ø 0ˆÔØ*DˆÔ'Ø#6ˆÔ Ø(ˆÔØ,ˆÔØ(@ˆÔ%Ø'>ˆÔ$Ø$8ˆÔ!Ø,HˆÔ)Ø×ÒÑÔÐÐÐr   )
NNNNNNNNNNrE   r1   r   r   r   r   ã   sY   € € € € € ðð ð €Dð (,Ø"&Ø,0Ø%)Ø"Ø $Ø*.Ø)-Ø&*Ø.2ðð ð ð ð ð r   r   )r3   rG   rJ   rN   r[   r^   T)r5   r7   r<   r>   r@   )r5   r:   r;   r>   r?   r@   )rP   rW   r>   r@   rV   )rP   rR   rT   rW   rX   r>   r@   rV   )rG   rJ   r[   r^   )r   Úautobahnr   Úautobahn.wamp.exceptionr   Ú__all__ÚEqualityMixinr   r   r   r   r	   r
   r   r   r   r1   r   r   ú<module>rd      sG  ðð6 €€€à Ð Ð Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1ð
€ðDð Dð Dð Dð D�4Ô%ñ Dô Dð Dð6$ð $ð $ð $ð $˜ñ $ô $ð $ðNð ð ð ð ˜\ñ ô ð ð6ð ð ð ð ˜Lñ ô ð ð2$ð $ð $ð $ð $˜ñ $ô $ð $ðNð ð ð ð ˜ñ ô ð ð2ð ð ð ð ˜ñ ô ð ðF !Ø(Ø&Ø Ø Ø ðð Ð ð )Ð(Ø!%Ø#'Ø $Ø!Ø%)ðñ ô ð 'Ð&Ø!%Ø&*Ø Ø!Ø&*Ø%)ðñ ô ð !Ð Ø"Ø!%Ø!Ø%)Øðñ ô ð !Ð Ø"Ø#'Ø Ø!%Ø $Ø!Ø%)Øð	ñ 	ô 	ð/!ð !Ð Ð Ð r   