diff options
author | Raúl Benencia <rbenencia@linti.unlp.edu.ar> | 2012-08-02 13:58:58 -0300 |
---|---|---|
committer | Raúl Benencia <rbenencia@linti.unlp.edu.ar> | 2012-08-02 13:58:58 -0300 |
commit | 10e9272d170f5c634e8ca8f7415fb4ad1454bfe6 (patch) | |
tree | 8a41526b84c0586677bdc57fb62ee797efb14552 /model.py | |
parent | 9afa33502b67151f36561119b70c765af675c1ca (diff) |
Finished port to python3. Untested.
Diffstat (limited to 'model.py')
-rw-r--r-- | model.py | 47 |
1 files changed, 23 insertions, 24 deletions
@@ -1,5 +1,3 @@ -from xml.etree.ElementTree import ElementTree - class Network(): """A simple network definition""" @@ -31,19 +29,25 @@ class Person(): self.email = email class Data(): - """Abstract class for storing anf getting information""" + """Abstract class for storing and getting information""" def __init__(self, config): - self.networks = [] self.config = config + self.networks = [] + self.domains = [] + self.persons = [] def parse_config(self): - """Abstract method""" + """Parse neccesary config params depending on the method used + + Abstract method""" pass def load_data(self): - """Abstract method""" + """Load data from defined source. + + Abstract method""" pass @@ -55,23 +59,18 @@ class Data(): return self.networks -class DataXML(Data): - """Reads network information from a XML file""" - - def parse_config(): - """Reads and sets up XML config file fields""" + def get_domains(self): + """Return all domains. Common method for all kind of storages.""" - self.data_file = self.config['Storage']['xml_file'] + if self.networks == None: + self.load_data() + + return self.domains + + def get_persons(self): + """Return all persons. Common method for all kind of storages.""" - def load_data(self): - """Parse XML for getting network information""" # Ugly implementation. Beautify. - root = ElementTree(file=self.data_file).getroot() - for elem in root: - network = WhoisNetwork(elem.attrib['name']) - for e in elem: - if e.tag == 'ip_block': - network.ip_blocks.append(e.text) - else: - network.data[e.tag] = e.text - - self.networks.append(network) + if self.persons == None: + self.load_data() + + return self.persons |