2to3 -f raise
[sfa.git] / sfa / util / storage.py
index 95ed8f5..9033434 100644 (file)
@@ -1,9 +1,5 @@
-### $Id$
-### $URL$
-
 import os
-
-from sfa.util.rspec import RecordSpec
+from sfa.util.xml import XML
 
 class SimpleStorage(dict):
     """
@@ -13,8 +9,8 @@ class SimpleStorage(dict):
     db_filename = None
     type = 'dict'
     
-    def __init__(self, db_filename, db = {}):
-
+    def __init__(self, db_filename, db = None):
+        if db is None: db={}
         dict.__init__(self, db)
         self.db_filename = db_filename
     
@@ -23,8 +19,8 @@ class SimpleStorage(dict):
             db_file = open(self.db_filename, 'r')
             dict.__init__(self, eval(db_file.read()))
         elif os.path.exists(self.db_filename) and not os.path.isfile(self.db_filename):
-            raise IOError'%s exists but is not a file. please remove it and try again' \
-                           % self.db_filename
+            raise IOError('%s exists but is not a file. please remove it and try again' \
+                           % self.db_filename)
         else:
             self.write()
             self.load()
@@ -49,20 +45,19 @@ class XmlStorage(SimpleStorage):
         """
         Parse an xml file and store it as a dict
         """ 
-        data = RecordSpec()
         if os.path.exists(self.db_filename) and os.path.isfile(self.db_filename):
-            data.parseFile(self.db_filename)
-            dict.__init__(self, data.toDict())
+            xml = XML(self.db_filename)
+            dict.__init__(self, xml.todict())
         elif os.path.exists(self.db_filename) and not os.path.isfile(self.db_filename):
-            raise IOError'%s exists but is not a file. please remove it and try again' \
-                           % self.db_filename
+            raise IOError('%s exists but is not a file. please remove it and try again' \
+                           % self.db_filename)
         else:
             self.write()
             self.load()
 
     def write(self):
-        data = RecordSpec()
-        data.parseDict(self)
+        xml = XML()
+        xml.parseDict(self)
         db_file = open(self.db_filename, 'w')
         db_file.write(data.toprettyxml())
         db_file.close()