[Zope3-checkins] CVS: Zope3/src/zope/app/component - meta.zcml:1.4

Jim Fulton jim@zope.com
Tue, 27 May 2003 08:55:52 -0400


Update of /cvs-repository/Zope3/src/zope/app/component
In directory cvs.zope.org:/tmp/cvs-serv7471/src/zope/app/component

Modified Files:
	meta.zcml 
Log Message:
Added a "class" directive that supports making security assertions
about non-content classes.


=== Zope3/src/zope/app/component/meta.zcml 1.3 => 1.4 ===
--- Zope3/src/zope/app/component/meta.zcml:1.3	Mon May 12 12:32:39 2003
+++ Zope3/src/zope/app/component/meta.zcml	Tue May 27 08:55:52 2003
@@ -39,127 +39,203 @@
     <directive name="service" attributes="serviceType component permission"
        handler="zope.app.component.metaconfigure.service" />
 
-  </directives>
-
-<directives namespace="http://namespaces.zope.org/zope">
-
-  <directive
-      name="content"
-      handler="zope.app.component.contentdirective.ContentDirective"
-      description="Make a component available as a content object type"
-      >
-    <attribute
-        name="class"
-        required="yes"
-        description="resolvable name of a class" 
-        />
-
-    <subdirective name="implements">
-
-      <description>
-            Declare that the class given by the content
-            directive's class attribute implements a given interface
-        </description>
-
+    <directive
+        name="content"
+        handler="zope.app.component.contentdirective.ContentDirective"
+        description="Make a component available as a content object type"
+        >
       <attribute
-          name="interface"
+          name="class"
           required="yes"
-          description="resolvable name of an Interface" 
+          description="resolvable name of a class" 
           />
-    </subdirective>
 
-    <subdirective name="require">
-      <description>
-          Indicate that the a specified list of names or the
-          names in a given Interface require a given permission for
-          access.
-        </description>
+      <subdirective name="implements">
 
-      <attribute
-          name="permission"
-          required="yes"
-          description="a permission id" 
-          />
+        <description>
+              Declare that the class given by the content
+              directive's class attribute implements a given interface
+          </description>
 
-      <attribute
-          name="attributes"
-          description="space-separated list of attribute names" 
-          />
+        <attribute
+            name="interface"
+            required="yes"
+            description="resolvable name of an Interface" 
+            />
+      </subdirective>
 
-      <attribute
-          name="interface"
-          description="the resolvable name of an interface" 
-          />
+      <subdirective name="require">
+        <description>
+            Indicate that the a specified list of names or the
+            names in a given Interface require a given permission for
+            access.
+          </description>
 
-      <attribute name="like_class">
+        <attribute
+            name="permission"
+            required="yes"
+            description="a permission id" 
+            />
+
+        <attribute
+            name="attributes"
+            description="space-separated list of attribute names" 
+            />
+
+        <attribute
+            name="interface"
+            description="the resolvable name of an interface" 
+            />
+
+        <attribute name="like_class">
+          <description>
+                a class on which the security requirements
+                for this class will be based 
+              </description>
+          </attribute>
+
+      </subdirective>
+
+      <subdirective name="allow">
         <description>
-              a class on which the security requirements
-              for this class will be based 
-            </description>
-        </attribute>
+              Declare a part of the class to be publicly
+              viewable (that is, requires the zope.Public
+              permission).  Only one of the following two
+              attributes may be used.
+           </description>
+
+        <attribute
+            name="attributes"
+            description="space-separated list of attribute names" 
+            />
+
+        <attribute
+            name="interface"
+            description="the resolvable name of an interface" 
+            />
 
-    </subdirective>
+      </subdirective>
 
-    <subdirective name="allow">
-      <description>
-            Declare a part of the class to be publicly
-            viewable (that is, requires the zope.Public
-            permission).  Only one of the following two
-            attributes may be used.
-         </description>
+      <subdirective name="factory">
 
-      <attribute
-          name="attributes"
-          description="space-separated list of attribute names" 
-          />
+        <description>
+              Specify the factory used to create this
+              content object
+          </description>
+
+        <attribute name="permission">
+          <description>
+                permission id required to use this factory.
+                Although optional, this attribute should normally
+                be specified. 
+                </description>
+          </attribute>
+
+        <attribute name="id">
+          <description>
+                the identifier for this factory in the
+                ZMI factory identification scheme.  If not given, defaults
+                to the literal string given as the content directive's
+                'class' attribute.
+              </description>
+          </attribute>
+
+        <attribute name="title">
+          <description>
+                text suitable for use in the 'add content' menu of
+                a management interface
+              </description>
+          </attribute>
 
+        <attribute name="description">
+          <description>
+                longer narrative description of what this
+                factory does
+            </description>
+          </attribute>
+
+      </subdirective>
+    </directive>
+
+    <directive
+        name="class"
+        handler="zope.app.component.contentdirective.ContentDirective"
+        description="Make statements about a class"
+        >
       <attribute
-          name="interface"
-          description="the resolvable name of an interface" 
+          name="class"
+          required="yes"
+          description="resolvable name of a class" 
           />
 
-    </subdirective>
+      <subdirective name="implements">
 
-    <subdirective name="factory">
+        <description>
+              Declare that the class given by the content
+              directive's class attribute implements a given interface
+          </description>
 
-      <description>
-            Specify the factory used to create this
-            content object
-        </description>
+        <attribute
+            name="interface"
+            required="yes"
+            description="resolvable name of an Interface" 
+            />
+      </subdirective>
 
-      <attribute name="permission">
+      <subdirective name="require">
         <description>
-              permission id required to use this factory.
-              Although optional, this attribute should normally
-              be specified. 
+            Indicate that the a specified list of names or the
+            names in a given Interface require a given permission for
+            access.
+          </description>
+
+        <attribute
+            name="permission"
+            required="yes"
+            description="a permission id" 
+            />
+
+        <attribute
+            name="attributes"
+            description="space-separated list of attribute names" 
+            />
+
+        <attribute
+            name="interface"
+            description="the resolvable name of an interface" 
+            />
+
+        <attribute name="like_class">
+          <description>
+                a class on which the security requirements
+                for this class will be based 
               </description>
-        </attribute>
+          </attribute>
 
-      <attribute name="id">
-        <description>
-              the identifier for this factory in the
-              ZMI factory identification scheme.  If not given, defaults
-              to the literal string given as the content directive's
-              'class' attribute.
-            </description>
-        </attribute>
+      </subdirective>
 
-      <attribute name="title">
+      <subdirective name="allow">
         <description>
-              text suitable for use in the 'add content' menu of
-              a management interface
-            </description>
-        </attribute>
+              Declare a part of the class to be publicly
+              viewable (that is, requires the zope.Public
+              permission).  Only one of the following two
+              attributes may be used.
+           </description>
+
+        <attribute
+            name="attributes"
+            description="space-separated list of attribute names" 
+            />
+
+        <attribute
+            name="interface"
+            description="the resolvable name of an interface" 
+            />
 
-      <attribute name="description">
-        <description>
-              longer narrative description of what this
-              factory does
-          </description>
-        </attribute>
+      </subdirective>
 
-    </subdirective>
-  </directive>
-</directives>
+    </directive>
+
+  </directives>
 
 </zopeConfigure>