Spamworldpro Mini Shell
Spamworldpro


Server : Apache/2.4.52 (Ubuntu)
System : Linux webserver 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64
User : www-data ( 33)
PHP Version : 8.1.2-1ubuntu2.21
Disable Function : NONE
Directory :  /lib/python3/dist-packages/twisted/spread/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/twisted/spread/__pycache__/util.cpython-310.pyc
o

�b��@s�dZddlmZddlmZmZddlmZddlm	Z	ddl
mZGdd�d�ZGd	d
�d
�Z
Gdd�d�ZGd
d�d�ZGdd�de�Zeej�Gdd�de��ZGdd�dej�Zdd�ZdS)z
Utility classes for spread.
�)�implementer)�defer�
interfaces)�basic)�Failure)�pbc@seZdZdd�Zdd�ZdS)�LocalMethodcCs||_||_dS�N)�local�name)�selfr
r�r
�5/usr/lib/python3/dist-packages/twisted/spread/util.py�__init__�
zLocalMethod.__init__cOs|jj|jg|�Ri|��Sr	)r
�
callRemoter)r�args�kwr
r
r�__call__szLocalMethod.__call__N)�__name__�
__module__�__qualname__rrr
r
r
rrsrc@s$eZdZdZdZdd�Zdd�ZdS)�
LocalAsRemotezN
    A class useful for emulating the effects of remote behavior locally.
    �cOs|t|d|�rt|d|�|i|��Szt|d|�}t�||i|���WSty=t�}|jr6|��t�|�YSw)ax
        Call a specially-designated local method.

        self.callRemote('x') will first try to invoke a method named
        sync_x and return its result (which should probably be a
        Deferred).  Second, it will look for a method called async_x,
        which will be called and then have its result (or Failure)
        automatically wrapped in a Deferred.
        �sync_�async_)	�hasattr�getattrr�succeed�
BaseExceptionr�reportAllTracebacks�printTraceback�fail)rrrr�method�fr
r
rr#s
�zLocalAsRemote.callRemotecCs
t||�Sr	)r)rrr
r
r�remoteMethod8�
zLocalAsRemote.remoteMethodN)rrr�__doc__r rr%r
r
r
rrs
rc@s*eZdZdZd
dd�Zdd�Zdd�Zd	S)�LocalAsyncForwarderzD
    A class useful for forwarding a locally-defined interface.
    rcCs$|�|�sJ�||_||_||_dSr	)�
providedBy�	forwarded�interfaceClass�failWhenNotImplemented)rr*r+r,r
r
rrAs
zLocalAsyncForwarder.__init__cOst|j|�|i|��Sr	)rr*)rr#rrr
r
r�_callMethodGszLocalAsyncForwarder._callMethodcOsP|j�|�rtj|j|g|�Ri|��}|S|jr#t�ttd|��St�	d�S)NzNo Such Method in Interface: %s)
r+�queryDescriptionForr�
maybeDeferredr-r,r"r�NotImplementedErrorr)rr#rr�resultr
r
rrJs�
zLocalAsyncForwarder.callRemoteN)r)rrrr'rr-rr
r
r
rr(<s

r(c@s:eZdZdZd
dd�Zdd�Zdd�Zd	d
�Zdd�ZdS)�Pagerz5
    I am an object which pages out information.
    NcOs>t|�r||_||_||_nd|_d|_||_|j�|�dS)z�
        Create a pager with a Reference to a remote collector and
        an optional callable to invoke upon completion.
        Nr)�callable�callback�callbackArgs�callbackKeyword�_stillPaging�	collector�broker�registerPageProducer)rr8r4rrr
r
rr[szPager.__init__cCs:|js|jjddd�|jdur|j|ji|j��|jS)�5
        (internal) Method called by Broker.
        �endedPagingF��pbanswerN)r7r8rr4r5r6�rr
r
r�stillPagingjs

zPager.stillPagingcCs|jjd|��dd�dS)r;�gotPageFr=N)r8r�nextPager?r
r
r�sendNextPagetszPager.sendNextPagecCst��)zO
        Override this to return an object to be sent to my collector.
        )r0r?r
r
rrBzszPager.nextPagecCs
d|_dS)z4
        Call this when you're done paging.
        rN)r7r?r
r
r�
stopPaging�s
zPager.stopPagingr	)	rrrr'rr@rCrBrDr
r
r
rr2Vs

r2c@s"eZdZdZddd�Zdd�ZdS)	�StringPagerz:
    A simple pager that splits a string into chunks.
    � NcOs2||_d|_||_tj|||g|�Ri|��dS)Nr)�string�pointer�	chunkSizer2r)rr8�strIr4rrr
r
rr�s zStringPager.__init__cCsD|j|j|j|j�}|j|j7_|jt|j�kr |��|Sr	)rGrHrI�lenrD�r�valr
r
rrB�s
zStringPager.nextPage)rFN)rrrr'rrBr
r
r
rrE�s
rEc@sBeZdZdZddd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�	FilePagerzC
    Reads a file in chunks and sends the chunks as they come.
    NcOs0g|_tj|||g|�Ri|��|�|�dSr	)�chunksr2r�startProducing)rr8�fdr4rrr
r
rr�szFilePager.__init__cs*t���|���_�j��fdd��dS)Ncs���Sr	)rD)�xr?r
r�<lambda>�sz*FilePager.startProducing.<locals>.<lambda>)r�
FileSender�beginFileTransfer�deferred�addBoth)rrQr
r?rrP�szFilePager.startProducingcCs||_|s|j��dSdSr	)�producer�resumeProducing)rrX�	streamingr
r
r�registerProducer�s�zFilePager.registerProducercCs
d|_dSr	)rXr?r
r
r�unregisterProducer�r&zFilePager.unregisterProducercC�|j�|�dSr	)rO�append)r�chunkr
r
r�write��zFilePager.writecCs6|jsdS|j�d�}|j��|jjd|dd�dS)zD
        Get the first chunk read and send it to collector.
        NrrAFr=)rO�poprXrYr8rrLr
r
rrC�s

zFilePager.sendNextPager	)
rrrr'rrPr[r\r`rCr
r
r
rrN�s
rNc@s(eZdZdZdd�Zdd�Zdd�ZdS)	�CallbackPageCollectorz�
    I receive pages from the peer. You may instantiate a Pager with a
    remote reference to me. I will call the callback with a list of pages
    once they are all received.
    cCsg|_||_dSr	)�pagesr4)rr4r
r
rr�rzCallbackPageCollector.__init__cCr]r	)rdr^)r�pager
r
r�remote_gotPage�raz$CallbackPageCollector.remote_gotPagecCs|�|j�dSr	)r4rdr?r
r
r�remote_endedPaging�raz(CallbackPageCollector.remote_endedPagingN)rrrr'rrfrgr
r
r
rrc�s
rccOs,t��}|j|t|j�g|�Ri|��|S)zr
    A utility method that will call a remote method which expects a
    PageCollector as the first argument.
    )r�Deferredrrcr4)�
referenceable�
methodNamerr�dr
r
r�getAllPages�s rlN)r'�zope.interfacer�twisted.internetrr�twisted.protocolsr�twisted.python.failurer�twisted.spreadrrrr(r2rE�	IConsumerrN�
Referenceablercrlr
r
r
r�<module>s	 1%

Spamworldpro Mini