[Checkins] SVN: zf.zscp/trunk/src/zf/zscp/ Added interface constraints

Roger Ineichen roger at projekt01.ch
Sun Apr 9 04:12:05 EDT 2006


Log message for revision 66703:
  Added interface constraints

Changed:
  U   zf.zscp/trunk/src/zf/zscp/interfaces.py
  U   zf.zscp/trunk/src/zf/zscp/website/interfaces.py

-=-
Modified: zf.zscp/trunk/src/zf/zscp/interfaces.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/interfaces.py	2006-04-09 00:54:39 UTC (rev 66702)
+++ zf.zscp/trunk/src/zf/zscp/interfaces.py	2006-04-09 08:12:04 UTC (rev 66703)
@@ -21,6 +21,8 @@
 import zope.interface.common.mapping
 import zope.schema
 import zope.schema.vocabulary
+from zope.app.container.constraints import containers
+from zope.app.container.constraints import contains
 
 import zf.zscp.fields
 
@@ -321,6 +323,8 @@
 class IPackage(zope.interface.Interface):
     """Package"""
 
+    containers('zf.zscp.interfaces.IZSCPRepository')
+
     name = zope.schema.Id(
         title=u"Package Name",
         description=u"The dotted Python path of the package.",
@@ -345,6 +349,10 @@
 class IZSCPRepository(zope.interface.common.mapping.IEnumerableMapping):
     """ZSCP Repository."""
 
+    containers('zf.zscp.website.interfaces.IZSCPSite')
+
+    contains(IPackage)    
+
     svnRoot = zope.schema.URI(
         title=u"SVN Repository Root",
         description=u"A SVN URI that can be used to checkout the package data.",

Modified: zf.zscp/trunk/src/zf/zscp/website/interfaces.py
===================================================================
--- zf.zscp/trunk/src/zf/zscp/website/interfaces.py	2006-04-09 00:54:39 UTC (rev 66702)
+++ zf.zscp/trunk/src/zf/zscp/website/interfaces.py	2006-04-09 08:12:04 UTC (rev 66703)
@@ -19,7 +19,10 @@
 import os.path
 import zope.schema
 from zope.app import folder
+
 from zf.zscp.i18n import MessageFactory as _
+from zope.app.container.constraints import containers
+from zope.app.container.constraints import contains
 
 
 def isDirectory(path):
@@ -35,6 +38,10 @@
     The site mainly contains ZSCP repository objects.
     """
 
+    containers(folder.interfaces.IFolder)
+
+    contains('zf.zscp.interfaces.IZSCPRepository')
+
     certificationDir = zope.schema.TextLine(title=_(u'Path'),
         description=_(u'Path to the directory.'),
         required=False,



More information about the Checkins mailing list