From c6a5880a19f60aeb1c7e7ed5d7eb00496546bd1f Mon Sep 17 00:00:00 2001 From: Jorrit Schaap <schaap@astron.nl> Date: Thu, 15 Oct 2015 12:42:53 +0000 Subject: [PATCH] Task #8291: added method to get info for one direcory by id --- LTA/ltastorageoverview/lib/store.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/LTA/ltastorageoverview/lib/store.py b/LTA/ltastorageoverview/lib/store.py index 334fc822cbf..80a796892f4 100644 --- a/LTA/ltastorageoverview/lib/store.py +++ b/LTA/ltastorageoverview/lib/store.py @@ -217,6 +217,17 @@ class LTAStorageDb: with sqlite3.connect(self.db_filename) as conn: return conn.execute('''SELECT id, name, url FROM storage_site where id = ?''', [site_id]).fetchone() + def directory(self, directory_id): + '''returns directory tuple (id, name, site_id, site_name) for the given directory_id''' + with sqlite3.connect(self.db_filename) as conn: + return conn.execute('''SELECT dir.id, dir.name, site.id, site.name + FROM storage_site_root + join storage_site site on site.id = storage_site_root.storage_site_id + join directory_closure dc on dc.ancestor_id = storage_site_root.directory_id + join directory dir on dir.id = dc.descendant_id + where dc.descendant_id = ? + ''', [directory_id]).fetchall() + def rootDirectories(self): '''returns list of all root directories (id, name, site_id, site_name) for all sites''' with sqlite3.connect(self.db_filename) as conn: -- GitLab