[Checkins] SVN: zf.zscp/trunk/src/zf/zscp/ Addressed API changes.
Stephan Richter
srichter at cosmos.phy.tufts.edu
Mon Jul 17 23:09:48 EDT 2006
Log message for revision 69168:
Addressed API changes.
Changed:
U zf.zscp/trunk/src/zf/zscp/skin/browser/views.py
U zf.zscp/trunk/src/zf/zscp/website/README.txt
U zf.zscp/trunk/src/zf/zscp/website/browser/package.py
U zf.zscp/trunk/src/zf/zscp/website/browser/repository.py
U zf.zscp/trunk/src/zf/zscp/website/browser/site.py
U zf.zscp/trunk/src/zf/zscp/website/repository.zcml
U zf.zscp/trunk/src/zf/zscp/website/site.py
-=-
Modified: zf.zscp/trunk/src/zf/zscp/skin/browser/views.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/skin/browser/views.py 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/skin/browser/views.py 2006-07-18 03:09:46 UTC (rev 69168)
@@ -18,9 +18,9 @@
from zope.interface import implements
from zope.contentprovider.interfaces import IContentProvider
+from zope.traversing.browser.absoluteurl import absoluteURL
from zope.viewlet.viewlet import ViewletBase
from zope.app.component.hooks import getSite
-from zope.app.traversing.browser.absoluteurl import absoluteURL
from zope.app.pagetemplate import ViewPageTemplateFile
from zf.zscp.website.browser.site import ISiteIndex
Modified: zf.zscp/trunk/src/zf/zscp/website/README.txt
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/README.txt 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/README.txt 2006-07-18 03:09:46 UTC (rev 69168)
@@ -8,13 +8,9 @@
>>> zscp = ZSCPSite()
# Add the site to the root, so it is fully located.
- >>> from zope.app.folder import rootFolder
- >>> root = rootFolder()
+ >>> root = getRootFolder()
>>> root[u'zscp'] = zscp
- >>> from zf.zscp.website.site import addAuthenticationUtilityToSite
- >>> addAuthenticationUtilityToSite(zscp, None)
-
The object added event will normaly add the authentication utility:
>>> from zope.app.component import hooks
Modified: zf.zscp/trunk/src/zf/zscp/website/browser/package.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/package.py 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/package.py 2006-07-18 03:09:46 UTC (rev 69168)
@@ -17,7 +17,7 @@
"""
import zope.schema
from zope.formlib import form
-from zope.formlib import page
+from zope.publisher.browser import BrowserPage
from zf.zscp.interfaces import IPublication
from zf.zscp.interfaces import IRelease
from zf.zscp.interfaces import ICertification
@@ -56,7 +56,7 @@
-class PackageInfo(page.Page):
+class PackageInfo(BrowserPage):
"""Package info view."""
template = ViewPageTemplateFile('package_info.pt')
@@ -97,7 +97,7 @@
template = ViewPageTemplateFile('package_community.pt')
-class PackageReleases(page.Page):
+class PackageReleases(BrowserPage):
"""Release view."""
template = ViewPageTemplateFile('package_releases.pt')
@@ -126,7 +126,7 @@
-class PackageClassifiers(page.Page):
+class PackageClassifiers(BrowserPage):
"""Classifier view."""
template = ViewPageTemplateFile('package_classifiers.pt')
@@ -147,7 +147,7 @@
return self.render()
-class PackageCertifications(page.Page):
+class PackageCertifications(BrowserPage):
"""Certification view."""
template = ViewPageTemplateFile('package_certifications.pt')
Modified: zf.zscp/trunk/src/zf/zscp/website/browser/repository.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/repository.py 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/repository.py 2006-07-18 03:09:46 UTC (rev 69168)
@@ -20,7 +20,7 @@
import zope.event
from zope.formlib import form
-from zope.app.event import objectevent
+from zope import lifecycleevent
from zf.zscp.interfaces import IPublication
from zf.zscp.package import Package
@@ -31,7 +31,7 @@
class AddPackageForm(form.AddForm):
"""Add a package to the repository."""
- form_fields = form.Fields(IPublication).select('packageName', 'name',
+ form_fields = form.Fields(IPublication).select('packageName', 'name',
'summary', 'author', 'authorEmail', 'license', 'metadataVersion')
def createAndAdd(self, data):
@@ -50,7 +50,7 @@
publication.license = data.get('license', [])
publication.metadataVersion = data.get('metadataVersion', u'')
package.publication = publication
- zope.event.notify(objectevent.ObjectCreatedEvent(package))
+ zope.event.notify(lifecycleevent.ObjectCreatedEvent(package))
# Add the register the package with the register method
self.context.register(package)
Modified: zf.zscp/trunk/src/zf/zscp/website/browser/site.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/browser/site.py 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/browser/site.py 2006-07-18 03:09:46 UTC (rev 69168)
@@ -18,9 +18,9 @@
from zope.interface import Interface
from zope.interface import implements
-from zope.formlib import page
+from zope.publisher.browser import BrowserPage
+from zope.traversing.browser.absoluteurl import absoluteURL
from zope.app import zapi
-from zope.app.traversing.browser.absoluteurl import absoluteURL
from zope.app.pagetemplate import ViewPageTemplateFile
from zc.table import table, column
@@ -33,7 +33,7 @@
"""
-class SiteIndex(page.Page):
+class SiteIndex(object):
"""Index for IZSCPSite"""
implements(ISiteIndex)
@@ -53,7 +53,7 @@
item.publication.certificationLevel).title
-class PackageList(page.Page):
+class PackageList(BrowserPage):
"""Show a list of packages."""
template = ViewPageTemplateFile('site_packages.pt')
Modified: zf.zscp/trunk/src/zf/zscp/website/repository.zcml
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/repository.zcml 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/repository.zcml 2006-07-18 03:09:46 UTC (rev 69168)
@@ -16,7 +16,7 @@
<adapter
factory="zope.app.container.traversal.ContainerTraversable"
- provides="zope.app.traversing.interfaces.ITraversable"
+ provides="zope.traversing.interfaces.ITraversable"
for="zf.zscp.interfaces.IZSCPRepository"
/>
Modified: zf.zscp/trunk/src/zf/zscp/website/site.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/site.py 2006-07-17 23:36:49 UTC (rev 69167)
+++ zf.zscp/trunk/src/zf/zscp/website/site.py 2006-07-18 03:09:46 UTC (rev 69168)
@@ -17,24 +17,16 @@
"""
__docformat__ = "reStructuredText"
-from zope.schema.fieldproperty import FieldProperty
import zope.component
import zope.interface
-import zope.interface
+import zope.lifecycleevent
+from zope.schema.fieldproperty import FieldProperty
-from zope.app import container
from zope.app import folder
-from zope.app import security, zapi
-from zope.app import zapi
+from zope.app import security
from zope.app.authentication import principalfolder
from zope.app.authentication import authentication
from zope.app.component import site
-from zope.app.component.interfaces import ISite
-from zope.app.component.interfaces.registration import ActiveStatus
-from zope.app.component.site import SiteManagementFolder
-from zope.app.container.interfaces import INameChooser
-from zope.app.event import objectevent
-from zope.app.utility import UtilityRegistration
from zf.zscp.website import interfaces
@@ -52,99 +44,19 @@
_marker = object()
-def ensureUtility(site, name, interface, utility, package, key):
- """Add and return the utility."""
- # preconditions
- name = unicode(name)
- if not ISite.providedBy(site):
- raise TypeError('ISite required.')
-
- # get or create sitemanagement folder (package)
- sitemanager = site.getSiteManager()
- try:
- default = sitemanager[package]
- except:
- sitemanager[package] = SiteManagementFolder()
- default = sitemanager[package]
-
- # choose class name as key if not given
- if key == _marker:
- chooser = container.interfaces.INameChooser(default)
- key = chooser.chooseName(utility.__name__, utility)
-
- # add utility to sitemanagement folder
- default[key] = utility
-
- # register utility
- path = zapi.getPath(utility)
- registration = UtilityRegistration(name, interface, utility)
- choosenkey = default.registrationManager.addRegistration(registration)
- component = zapi.traverse(default.registrationManager, choosenkey)
- component.status = ActiveStatus
-
- return zapi.traverse(sitemanager, path)
-
-
-# plugable authentication utility
-def addPluggableAuthentication(site, name='', package='default', key=_marker,
- prefix=''):
- """Add a plugable authentication utility (pau) to a site
-
- The pau is added to the package and activated.
- This assumes the site has already a Utility Service.
- """
-
- interface = security.interfaces.IAuthentication
- utility = authentication.PluggableAuthentication(prefix)
-
- return ensureUtility(site, name, interface, utility, package, key)
-
-
-
-# add authenticator plugin
-def addAuthenticatorPlugin(pau, key, utility, name):
- """Add authenticator plugin."""
-
- pau.authenticatorPlugins += (name,)
- package = pau.__name__
- interface = authentication.interfaces.IAuthenticatorPlugin
-
- return ensureAuthenticationPlugin(pau, name, interface, utility, key)
-
-
-def ensureAuthenticationPlugin(pau, name, interface, utility, key):
- """Add and return the utility."""
- # preconditions
- name = unicode(name)
-
- # choose class name as key if not given
- if key == _marker:
- chooser = INameChooser(default)
- key = chooser.chooseName(utility.__name__, utility)
-
- # add utility to sitemanagement folder
- pau[key] = utility
-
- # register utility
- path = zapi.getPath(utility)
- registration = UtilityRegistration(name, interface, utility)
- choosenkey = pau.registrationManager.addRegistration(registration)
- component = zapi.traverse(pau.registrationManager, choosenkey)
- component.status = ActiveStatus
-
- return zapi.traverse(pau, path)
-
-
-
def addAuthenticationUtilityToSite(ob, event):
"""Add a pluggable authentication utility to the zscp site."""
-
+ sm = ob.getSiteManager()
prefix = 'zscp.'
- pau = addPluggableAuthentication(ob)
+ pau = authentication.PluggableAuthentication()
+ sm['default']['pau'] = pau
+ sm.registerUtility(pau, security.interfaces.IAuthentication)
+
# setup 'principals' principal folder
principals = principalfolder.PrincipalFolder(prefix)
- zope.event.notify(objectevent.ObjectCreatedEvent(principals))
- principals = addAuthenticatorPlugin(
- pau, u'principals', principals, u'principals')
+ zope.event.notify(zope.lifecycleevent.ObjectCreatedEvent(principals))
+ pau['principals'] = principalfolder.PrincipalFolder()
+ pau.authenticatorPlugins += (u'principals',)
+
More information about the Checkins
mailing list