Spade

Mini Shell

Directory:~$ /proc/self/root/usr/lib/python2.7/site-packages/zope/component/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ //proc/self/root/usr/lib/python2.7/site-packages/zope/component/security.pyo

�
6j/Qc@s�dZddlmZddlmZddlmZddlmZddlmZddlm	Z	ddl
mZdd	l
mZdd
l
m
Z
ddlmZdZd
efd��YZd�Zdddd�Zd�Zd�ZdS(s5zope.security
support for the configuration handlers
i����(t
providedBy(t	ProxyBase(tgetProxiedObject(tLocatingTrustedAdapterFactory(tLocatingUntrustedAdapterFactory(tTrustedAdapterFactory(tChecker(t
CheckerPublic(tInterfaceChecker(tProxyszope.PublictPermissionProxycBs#eZdZd�Zee�ZRS(t__Security_checker__cCstt|��S(N(RR(tself((s;/usr/lib/python2.7/site-packages/zope/component/security.pyt__providedBy__"s(s__Security_checker__(t__name__t
__module__t	__slots__R
tproperty(((s;/usr/lib/python2.7/site-packages/zope/component/security.pyR
s	cCs�|r|rdg}n|tkr/t}ni}|rYx|D]}|||<qBWn|r�x8|D]-}x$|jdt�D]}|||<qWqfWnt|�}|S(Nt__call__tall(tPublicPermissionRtnamestTrueR(t_contextt
permissiontallowed_interfacetallowed_attributestrequiretnametitchecker((s;/usr/lib/python2.7/site-packages/zope/component/security.pyt_checker&s	

cCss|dkrZ|dks$|dkr3td��n|tkrHt}nt||�}nt|�}||_|S(s�Try
to get the object proxied with the `checker`, but not too soon

    We really don't want to proxy the object unless we need to.
    s<Required arguments: checker or both provides and
permissionsN(tNonet
ValueErrorRRRR
R(tobRtprovidesR((s;/usr/lib/python2.7/site-packages/zope/component/security.pytproxify9s		csC|tkrt}nt||����fd�}�|_|S(Ncs@�|�}y
�|_Wn
tk
r;t|��}nX|S(N(RtAttributeErrorR	(targsR"(Rtoriginal_factory(s;/usr/lib/python2.7/site-packages/zope/component/security.pytfactoryOs

(RRRR((R'R#RR(((RR's;/usr/lib/python2.7/site-packages/zope/component/security.pytprotectedFactoryJs		cCsh|tkrt}n|s3|dk	rP|tk	rP|rCt|�St|�Sn|r`t|�S|SdS(N(RRR
RRR(R(Rtlocatettrusted((s;/usr/lib/python2.7/site-packages/zope/component/security.pytsecurityAdapterFactoryYs	


N(t__doc__tzope.interfaceRt
zope.proxyRRtzope.security.adapterRRRtzope.security.checkerRRRtzope.security.proxyR	RR
RR
R$R)R,(((s;/usr/lib/python2.7/site-packages/zope/component/security.pyt<module>s