source: products/quintagroup.transmogrifier/trunk/quintagroup/transmogrifier/portlets.txt @ 1563

Last change on this file since 1563 was 1563, checked in by koval, 14 years ago

implemented section for exporting of portlet assignments

File size: 2.3 KB
Line 
1Portlets exporter and importer sections
2=======================================
3
4Portlets exporter and importer sections are used to migrate Plone 3 contextual
5portlet assignments and blacklist settings.
6The portlets exporter section blueprint name is
7``quintagroup.transmogrifier.portletsexporter`` and importer section blueprint
8name is ``quintagroup.transmogrifier.portletsimporter``.
9
10Portlet assignments and blacklists are stored in XML format. Both sections need
11relative path to the object with portlets assigned and importer also needs XML
12data for updating them.
13
14Both sections has ``path-key`` option which specifies key in item where path to
15object is stored (``_path`` is default) and ``files-key`` option that gives
16key where XML data will be or is stored.
17
18>>> import pprint
19>>> portlets = """
20... [transmogrifier]
21... pipeline =
22...     portletssource
23...     portletsexporter
24...     printer
25...     dataprinter
26...     portletsimporter
27...     
28... [portletssource]
29... blueprint = quintagroup.transmogrifier.tests.portletssource
30...
31... [portletsexporter]
32... blueprint = quintagroup.transmogrifier.portletsexporter
33...
34... [printer]
35... blueprint = collective.transmogrifier.sections.tests.pprinter
36...
37... [dataprinter]
38... blueprint = quintagroup.transmogrifier.tests.dataprinter
39... print =
40...     _files
41...     portlets
42...     data
43...
44... [portletsimporter]
45... blueprint = quintagroup.transmogrifier.portletsimporter
46... """
47>>> registerConfig(u'quintagroup.transmogrifier.tests.portlets', portlets)
48>>> transmogrifier(u'quintagroup.transmogrifier.tests.portlets') # doctest: +ELLIPSIS, +REPORT_NDIFF
49{}
50{'_path': 'not/existing/bar'}
51{'_path': 'spam/eggs/notassignable'}
52{'_files': {'portlets': {'data': ...
53                         'name': '.portlets.xml'}},
54 '_path': 'assignable'}
55<?xml version="1.0" encoding="utf-8"?>
56<portlets>
57  <assignment category="context" key="/assignable" manager="plone.leftcolumn" name="rss" type="portlets.rss">
58    <property name="count">
59      10
60    </property>
61    <property name="url">
62      http://sumno.com/feeds/main-page/
63    </property>
64    <property name="portlet_title">
65      RSS feed
66    </property>
67    <property name="timeout">
68      60
69    </property>
70  </assignment>
71</portlets>
72<BLANKLINE>
73>>> pprint.pprint(plone.updated)
74()
Note: See TracBrowser for help on using the repository browser.