X-Git-Url: https://v.licheni.net/stack/code/dboxswitch.git/blobdiff_plain/6387024f16be8f34ace846b605a8cf05938cd849..a5e393b35e4193a4d86379263aef24b61c8c2bba:/profhandler.py diff --git a/profhandler.py b/profhandler.py old mode 100755 new mode 100644 index 19a6b97..7575da2 --- a/profhandler.py +++ b/profhandler.py @@ -109,9 +109,20 @@ class ProfHandler(): raise AppError('Profile Name does not exists') else: raise AppError('Profile Name not valid') - print("Profile "+profileName+" created.") + print("Profile "+profileName+" deleted.") + + def isCurrentProfile(self, ppath): + """ Returns true if the current profile path is currently activated """ + + pl = platform.system() + if pl in ('Linux','Darwin'): + if os.path.exists(self.getDropboxDirectory()): + return True if os.readlink(self.getDropboxDirectory()) == ppath else False + else: + return False def isValidProfileName(self, pname): + if self.reg.match(pname) is not None: return True else: @@ -122,8 +133,6 @@ class ProfHandler(): if ppath in self.getProfilesList(): self.stopDropbox() try: - print self.getDropboxDirectory() - print ppath if pl in ('Linux','Darwin'): if os.path.exists(self.getDropboxDirectory()): os.unlink(self.getDropboxDirectory()) @@ -131,11 +140,16 @@ class ProfHandler(): else: raise NotImplementedError, "Not implemented yet." except IOError as e: - raise AppError('Error on activating Profile: '+ os.path.basename(ppath)) + raise AppError('Error on activating Profile: '+ self.getBaseProfileName(ppath)) self.startDropbox() else: raise AppError("Trying to acrivate non existant profile") + def getBaseProfileName(self, ppath): + """ Returns the base name given a profile returned by getProfilesList """ + + return os.path.basename(ppath) + def getDropboxDirectory(self): pl = platform.system() if pl in ('Linux', 'Darwin'): @@ -149,6 +163,8 @@ class ProfHandler(): def stopDropbox(self): """ Stop dropbox Daemon """ pl = platform.system() + if pl == 'Linux': + os.system("dropbox stop") if pl in ('Linux','Darwin'): pidfile = os.path.expanduser("~/.dropbox/dropbox.pid") try: