diff options
author | Andrew Shadura <andrew@shadura.me> | 2015-08-20 15:58:26 +0200 |
---|---|---|
committer | Andrew Shadura <andrew@shadura.me> | 2015-08-20 15:58:26 +0200 |
commit | ff1408420159488a106492ccd11dd234967029b6 (patch) | |
tree | 473420cee1c5229a427ec4cafead1aa6c0a26800 /reconfigure/items/hosts.py |
Imported Upstream version 0.1.29
Diffstat (limited to 'reconfigure/items/hosts.py')
-rw-r--r-- | reconfigure/items/hosts.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/reconfigure/items/hosts.py b/reconfigure/items/hosts.py new file mode 100644 index 0000000..74904dc --- /dev/null +++ b/reconfigure/items/hosts.py @@ -0,0 +1,26 @@ +from reconfigure.nodes import Node, PropertyNode +from reconfigure.items.bound import BoundData + + +class HostsData (BoundData): + pass + + +class HostData (BoundData): + def template(self): + return Node('line', children=[ + Node('token', children=[PropertyNode('value', '127.0.0.1')]), + Node('token', children=[PropertyNode('value', 'localhost')]), + ]) + + +class AliasData (BoundData): + def template(self): + return Node() + + +HostsData.bind_collection('hosts', item_class=HostData) +HostData.bind_property('value', 'address', path=lambda x: x.children[0]) +HostData.bind_property('value', 'name', path=lambda x: x.children[1]) +HostData.bind_collection('aliases', item_class=AliasData, selector=lambda x: x.parent.indexof(x) > 1) +AliasData.bind_property('value', 'name') |