File: exports.py

package info (click to toggle)
python-reconfigure 0.1.81%2Bgit20171214.2b8729a8-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 724 kB
  • sloc: python: 4,219; makefile: 186; sh: 7
file content (30 lines) | stat: -rw-r--r-- 740 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from reconfigure.nodes import Node, PropertyNode
from reconfigure.items.bound import BoundData


class ExportsData (BoundData):
    pass


class ExportData (BoundData):
    def template(self):
        return Node(
            '/',
            Node('clients')
        )


class ClientData (BoundData):
    def template(self):
        return Node(
            'localhost',
            PropertyNode('options', '')
        )


ExportsData.bind_collection('exports', item_class=ExportData)
ExportData.bind_name('name')
ExportData.bind_attribute('comment', 'comment', default='')
ExportData.bind_collection('clients', path=lambda x: x['clients'], item_class=ClientData)
ClientData.bind_name('name')
ClientData.bind_property('options', 'options')