X-Git-Url: http://git.onelab.eu/?p=sface.git;a=blobdiff_plain;f=sfadata.py;fp=sfadata.py;h=dbf7f30f97803c9a639b0cbc08d0fd4fdbc73143;hp=433868e09f22f27312726c2b4408546bb9189613;hb=ed903cae7e8b45b9d3f2cdcbefbb94d2cadad038;hpb=d8beeb8ad0c9cf2eab771d68e5006c5bb94d521b diff --git a/sfadata.py b/sfadata.py index 433868e..dbf7f30 100644 --- a/sfadata.py +++ b/sfadata.py @@ -14,6 +14,9 @@ class SfaData: } def __init__(self): + self.read_config() + + def read_config(self): filename = os.path.expanduser("~/.sfi/sfi_config") execfile(filename, SfaData.__dict__) for (k,v) in SfaData.defaults.items(): @@ -23,6 +26,28 @@ class SfaData: for (k,v) in SfaData.defaults.items(): print "%-20s: %r"%(k,getattr(SfaData,k)) + def save_config(self): + config_keys = SfaData.defaults.keys() + configfile = os.path.expanduser("~/.sfi/sfi_config") + tmpfile = configfile + ".tmp" + + out = open(tmpfile, "w") + for line in open(os.path.expanduser("~/.sfi/sfi_config")): + try: + key, val = line.split('=') + key = key.strip() + val = val.strip() + if key in config_keys: + line = "%s = '%s'\n" % (key, getattr(self, key)) + except: + pass + out.write(line) + out.close() + + os.unlink(configfile) + os.rename(tmpfile, configfile) + + def getAuthority(self): return SfaData.SFI_AUTH