fix errors
[sfa.git] / geni / util / storage.py
1
2 class SimpleStorage(dict):
3
4     db_filename = None
5     types = ['dict', 'tabbed', 'text', 'shell']
6
7     def __init__(self, db_filename, db = {}, type = 'dict'):
8
9         if type not in self.types:
10             raise Exception, "Invalid type %s, must be in %s" % (type, self.types)
11         self.type = type
12         dict.__init__(self, db)
13         self.db_filename = db_filename
14     
15     def load(self):
16         db_file = open(self.db_filename, 'r')
17         dict.__init__(self, eval(db_file.read()))    
18  
19     def write(self):
20         db_file = open(self.db_filename, 'w')  
21         db_file.write(str(self))
22         db_file.close()
23     
24     def sync(self):
25         self.write()