%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.pyc

�
��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|}xj|D]b}tj|�}||}t|}||kr�|||ks�t�n
|||<|||<q7WdS(N(RRR
RtAssertionError(	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_specR1t_eventsthasattrR5Rt	only_oncetlistent_listen(R.targstkwR3R4R"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$RtitemsRtremoveR1(R.R	R
tcollection_reftlistener_reft
collectiontlistener_fn((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyRE�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#R6R7t
for_modifytinserttappend(R.t	propagateRLR4tretvalR"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(RRMRRR(R.Rtlist_((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pytappend_to_listscC@s!t||�|j|j�dS(N(RRER(R.RRQ((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.RRQ((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__RR0tpropertyRR1R2R<RERJRRPRRRRSRU(((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyR!�s&							(RXt
__future__RtcollectionsR)R
tRRtdefaultdicttdictRRRRRRR tobjectR!(((sL/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/event/registry.pyt<module>s
					

Zerion Mini Shell 1.0