Remove .svn/ (hidden folder)
[tablet-suite] / src / backup / .svn / text-base / pcsbackupparser.py.svn-base
diff --git a/src/backup/.svn/text-base/pcsbackupparser.py.svn-base b/src/backup/.svn/text-base/pcsbackupparser.py.svn-base
deleted file mode 100644 (file)
index c950a6e..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-# Module used to parse osso-backup xml conf files, retrieving categories and
-# backup paths information
-
-import os.path
-import xml.dom
-import xml.dom.minidom
-
-from pcsbackuplocation import *
-
-
-class PcsBackupParser:
-    """Holds a list of Backup_location objects
-
-    Can parse .conf xml files with osso-backup format at the given path with
-    fill_locations_list, creating Backup_location objects based on type,
-    category and path of each location inside each xml file and then holding
-    all objects in the locations_list attribute.
-
-    """
-    def __init__(self):
-        self.locationsDict = {}
-        
-    def getLocationsDict(self):
-        return self.locationsDict
-        
-    def addLocation(self, location):
-        """Add a location to locations_list attribute of theis class.
-
-        Arguments:
-        location -- the location object to be added
-
-        """
-        category = location.category
-        if category in self.locationsDict.keys():
-            self.locationsDict[category].append(location)
-        else:
-            self.locationsDict[category] = [location]
-
-    def fillLocationsDict(self, path):
-        """Add all locations that can be found inside xml files of the given
-        path.
-
-        This method reads all .conf files inside the directory path given and
-        puts on its locations_list attribute all the Backup_location objects
-        created with the informations returned from the files parsing.
-
-        Arguments:
-        path -- Path of directory containing files to parse
-
-        """
-        for file in os.listdir(path):
-            if file.endswith(".conf"):
-                locations = self.locationsFromFile(os.path.join(path, file))
-                for location in locations:
-                    self.addLocation(location)
-
-    def locationsFromFile(self, xml_file):
-        """Return a list with all locations objects inside the given file.
-
-        The file is parsed and all informations retrieved from it are used to
-        create Backup_location objects and these objects are appended to a list
-        that is returned to caller.
-
-        Arguments:
-        xml_file -- File to parse
-
-        Returns:
-        locations -- List with all Backup_location objects created from file
-
-        """
-        locations_map = self._parser(xml_file)
-        locations = []
-        number_of_locations = len(locations_map["types"])
-        for i in range(number_of_locations):
-            type = locations_map["types"][i]
-            category = locations_map["categories"][i]
-            path = locations_map["paths"][i]
-            path = self._fixPath(path)
-            new_loc = PcsBackupLocation(type, category, path)
-            locations.append(new_loc)
-        return locations
-    
-
-    def _parser(self, xml_file):
-        # Parses the xml_file, divide each location element information on a
-        # dictonary with key to respective information.
-        # Dictonary format:
-        # { "types": list of types in order of location appereance,
-        #   "categories": list of categories ordered like types
-        #   "paths" list of install paths in the same order as the others }
-        dom = xml.dom.minidom.parse(xml_file)
-        types = []
-        categories = []
-        paths = []
-        for node in dom.getElementsByTagName("location"):
-            type = node.getAttribute("type")
-            category = node.getAttribute("category")
-            path = node.childNodes[0].data.strip()
-            types.append(type)
-            categories.append(category)
-            paths.append(path)
-
-        location_map = {"types": types, "categories": categories, "paths": paths}
-        return location_map
-
-    def _fixPath(self, path):
-        # Fix any file path containing device specific constants, modifying
-        # them to its values
-        modifications = {"$HOME":"/home/user", "$USER":"user"}
-        for key in modifications.keys():
-            path = path.replace(key, modifications[key])
-        if not path.startswith("/"):
-            path = "/".join(path)
-        return path
-