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')
|