
    Mh                     l    d Z ddlZddlZddlmZmZ ddlZddlmZ ddl	m
Z
  G d de
          ZdgZdS )	zOZAP Authenticator integrated with the asyncio IO loop.

.. versionadded:: 15.2
    N)AnyOptional)Poller   )Authenticatorc            	            e Zd ZU dZee         ed<   eed<   	 	 	 	 dded         ded	ed
ef fdZ	ddZ
d fdZd fdZ xZS )AsyncioAuthenticatorz1ZAP authentication for use in the asyncio IO loop_AsyncioAuthenticator__poller_AsyncioAuthenticator__taskNutf-8contextzzmq.Contextloopencodinglogc                     t                                          |||           |)t          j        | j        j         dt          d           d | _        d | _        d S )Nz (loop) is deprecated and ignored   )
stacklevel)	super__init__warningswarn	__class____name__DeprecationWarningr
   r   )selfr   r   r   r   r   s        P/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/zmq/auth/asyncio.pyr   zAsyncioAuthenticator.__init__   sk     	(C000M>*LLL"   
     returnc                    K   | j         r| j                                          d {V }| j        t          |          v r4| j                                        }|                     |           d {V  | j         pd S d S )N)r
   poll
zap_socketdictrecv_multiparthandle_zap_message)r   eventsmsgs      r   __handle_zapz!AsyncioAuthenticator.__handle_zap*   s      m'=--////////F$v,,..o4466--c222222222	 m'''''r   c                    t                                                       t                      | _        | j                            | j        t          j                   t          j	        | 
                                          | _        dS )zStart ZAP authenticationN)r   startr   r
   registerr!   zmqPOLLINasyncioensure_future!_AsyncioAuthenticator__handle_zapr   r   r   s    r   r)   zAsyncioAuthenticator.start1   s]    t
;;;+D,=,=,?,?@@r   c                     | j         r| j                                          | j        r&| j                            | j                   d| _        t                                                       dS )zStop ZAP authenticationN)r   cancelr
   
unregisterr!   r   stopr0   s    r   r4   zAsyncioAuthenticator.stop8   s_    ; 	!K   = 	!M$$T_555 DMr   )NNr   N)r   N)r   
__module____qualname____doc__r   r   __annotations__r   strr   r/   r)   r4   __classcell__)r   s   @r   r	   r	      s         ;;vKKK ,0 -(  	
      "3 3 3 3A A A A A A         r   r	   )r7   r-   r   typingr   r   r+   zmq.asyncior   baser   r	   __all__ r   r   <module>r@      s                       



            , , , , ,= , , ,^ "
"r   