[Checkins] SVN: gocept.xmlrpcskin/trunk/README.txt Add usage example
Wolfgang Schnerring
wosc at wosc.de
Tue Jul 26 05:33:56 EDT 2011
Log message for revision 122356:
Add usage example
Changed:
U gocept.xmlrpcskin/trunk/README.txt
-=-
Modified: gocept.xmlrpcskin/trunk/README.txt
===================================================================
--- gocept.xmlrpcskin/trunk/README.txt 2011-07-26 09:29:09 UTC (rev 122355)
+++ gocept.xmlrpcskin/trunk/README.txt 2011-07-26 09:33:56 UTC (rev 122356)
@@ -2,7 +2,7 @@
gocept.xmlrpcskin
=================
-This package is an extension to ``zope.publisher`` that provides a ZCML
+This package is an extension to the Zope Publisher that provides a ZCML
directive for XML-RPC views that supports a ``layer`` parameter.
It collects the changes that briefly were contained in 3.5.0alpha releases (but
@@ -16,8 +16,54 @@
Usage
=====
-Include the necessary ZCML::
+The ``gocept:xmlrpcview`` directive is like the ``xmlrpc:view`` directive of
+``zope.app.publisher``, but with an additional parameter ``layer``.
+Here's an abbriged example (also available as
+``gocept.xmlrpcskin.tests.fixture``)::
+
+ <include package="zope.component" file="meta.zcml" />
+
<include package="gocept.xmlrpcskin" file="meta.zcml" />
<include package="gocept.xmlrpcskin" />
+ <interface
+ interface=".interfaces.IFooLayer"
+ type="gocept.xmlrpcskin.interfaces.IXMLRPCSkinType"
+ name="foo"
+ />
+
+ <gocept:xmlrpcview
+ for="*"
+ class=".view.Example"
+ permission="zope.Public"
+ methods="
+ all_layers
+ "
+ />
+
+ <gocept:xmlrpcview
+ for="*"
+ class=".view.Example"
+ layer=".interfaces.IFooLayer"
+ permission="zope.Public"
+ methods="
+ foo_layer
+ "
+ />
+
+
+ class IFooLayer(zope.publisher.interfaces.xmlrpc.IXMLRPCRequest):
+ pass
+
+ class Example(zope.app.publisher.xmlrpc.XMLRPCView):
+
+ def all_layers(self):
+ return dict(returncode=1)
+
+ def foo_layer(self):
+ return dict(returncode=2)
+
+
+The method ``all_layers`` will then be available on all layers, while
+``foo_layer`` only is available on ``/++skin++foo``.
More information about the checkins
mailing list