[Zope3-Users] Re: How to register inside PAU?
Philipp von Weitershausen
philipp at weitershausen.de
Thu Apr 27 18:18:30 EDT 2006
Florian Lindner wrote:
> Hello,
> I've this piece of working code which generates deprecation warnings with the
> new API:
>
> registration = UtilityRegistration("cs users",
> zope.app.authentication.interfaces.IAuthenticatorPlugin, principal_folder)
>
> registration_manager = pau.registrationManager
> registration_manager.addRegistration(registration)
> registration.status = u'Active'
Right. This is the "baroque" registration API and deprecated in Zope
3.3/the trunk (in the future, please state which Zope version you're
using...)
> My problem is: where do I get a class instance that implements
> zope.component.interfaces.IComponentRegistry? (which is AFAIK needed for the
> new registration)
IComponentRegistry is implemented by site managers. So you should be
able to go the site manager of your nearest site and simply say:
>>> sm = site.getSiteManager()
>>> sm.registerUtility(principal_folder, IAuthenticatorPlugin,
... "cs_users")
zope.traversing.api.getSite gets you to the nearest site, for example.
Philipp
More information about the Zope3-users
mailing list