Read ~/.sfi/sfi_config
[sfa-gui.git] / SfaData.py
index 88d2b13..117c06d 100644 (file)
@@ -4,32 +4,36 @@ from subprocess import *
 from sfa.util.rspecHelper import RSpec
 
 class SfaData:
-    authority = "plc.princeton"
-    user = "plc.princeton.acb"
-    slice = "plc.princeton.sapan"
-
     def __init__(self):
         self.registry = None
         self.slicemgr = None
+        filename = os.path.expanduser("~/.sfi/sfi_config")
+        execfile(filename, SfaData.__dict__)
+        if not hasattr(SfaData, 'SFI_AUTH'): 
+            SfaData.SFI_AUTH = None
+        if not hasattr(SfaData, 'SFI_USER'): 
+            SfaData.SFI_USER = None
+        if not hasattr(SfaData, 'SFI_SLICE'): 
+            SfaData.SFI_SLICE = None
 
     def getAuthority(self):
-        return SfaData.authority
+        return SfaData.SFI_AUTH
 
     def getUser(self):
-        return SfaData.user
+        return SfaData.SFI_USER
 
     def setUser(self, user):
-        SfaData.user = user
+        SfaData.SFI_USER = user
 
         # Should probably get authority from user record instead...
-        a = SfaData.user.split('.')
-        SfaData.authority = '.'.join(a[:len(a)-1])
+        a = user.split('.')
+        SfaData.SFI_AUTH = '.'.join(a[:len(a)-1])
 
     def getSlice(self):
-        return SfaData.slice
+        return SfaData.SFI_SLICE
 
     def setSlice(self, slice):
-        SfaData.slice = slice
+        SfaData.SFI_SLICE = slice
 
     def getRecord(self, hrn):
         text = Popen(["sfi.py", "-u", self.getUser(), "-a",