summaryrefslogtreecommitdiff
path: root/xml.py
diff options
context:
space:
mode:
authorRaúl Benencia <rbenencia@linti.unlp.edu.ar>2012-08-02 20:10:28 -0300
committerRaúl Benencia <rbenencia@linti.unlp.edu.ar>2012-08-02 20:10:28 -0300
commitee504272d535dcfab2d00948a1b005b87dc6605a (patch)
tree9d18cd6d1d923da942261bfa591e2290d68a6e92 /xml.py
parent849895f9f94b70d55f3b69db07f23ba93468bca4 (diff)
Merge xml.py with model.py
Diffstat (limited to 'xml.py')
-rw-r--r--xml.py72
1 files changed, 0 insertions, 72 deletions
diff --git a/xml.py b/xml.py
deleted file mode 100644
index f8fb0f2..0000000
--- a/xml.py
+++ /dev/null
@@ -1,72 +0,0 @@
-from xml.etree import ElementTree
-import model
-
-class DataXML(model.Data):
- """Reads network information from a XML file"""
-
- def parse_config(self):
- """Reads and sets up XML config file fields"""
-
- self.data_file = self.config['Storage']['xml_file']
-
- def load_data(self):
- """Parse XML for getting network information"""
-
- root = ElementTree(file=self.data_file).getroot()
-
- for elem in root:
- if elem.tag == 'person':
- self.add_person(elem)
- elif elem.tag == 'domain':
- self.add_domain(elem)
- elif elem.tag == 'network':
- self.add_network(elem)
- else:
- pass # raise TagNotFoundError
-
-
- def add_person(self, elem):
- """Adds a new person"""
-
- person = model.Person()
- for e in elem:
- if e.tag == 'name':
- person.name = e.text
- elif e.tag == 'surname':
- person.surname = e.text
- elif e.tag == 'email':
- person.email = e.text
- else:
- person.data[e.tag] = e.text
-
- self.persons[elem.attrib['id']] = person
-
- def add_domain(self, elem):
- """Adds a new domain"""
-
- domain = model.Domain()
- for e in elem:
- if e.tag == 'name':
- domain.name == e.text
- else:
- domain.data[e.tag] = e.text
-
- self.domains[elem.attrib['id']] = domain
-
- def add_network(self, elem):
- """Adds a new network"""
-
- network = model.Network()
- for e in elem:
- if e.tag == 'name':
- network.name = e.text
- elif e.tag == 'domain':
- network.domains.append(e.text)
- elif e.tag == 'ip_block':
- network.ip_blocks.append(e.text)
- elif e.tag == 'admin':
- network.admins.append(e.text)
- else:
- network.data[e.tag] = e.text
-
- self.networks[elem.attrib['id']] = network
nihil fit ex nihilo