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 | 
