diff --git a/corrlib/find.py b/corrlib/find.py index 7591c75..01940e4 100644 --- a/corrlib/find.py +++ b/corrlib/find.py @@ -6,9 +6,9 @@ import pandas as pd # this will implement the search functionality -def _project_aka_lookup(alias): +def _project_lookup_by_alias(db, alias): # this will lookup the project name based on the alias - conn = sqlite3.connect('backlogger.db') + conn = sqlite3.connect(db) c = conn.cursor() c.execute(f"SELECT * FROM 'projects' WHERE alias = '{alias}'") results = c.fetchall() @@ -20,6 +20,15 @@ def _project_aka_lookup(alias): return results[0][0] +def _project_lookup_by_id(db, uuid): + conn = sqlite3.connect(db) + c = conn.cursor() + c.execute(f"SELECT * FROM 'projects' WHERE id = '{uuid}'") + results = c.fetchall() + conn.close() + return results + + def _db_lookup(db, ensemble, correlator_name, project=None, code=None, parameters=None, created_before=None, created_after=None, updated_before=None, updated_after=None, revision=None): project_str = project @@ -86,3 +95,17 @@ def find_record(path, ensemble, correlator_name, project=None, code=None, parame results = filter_results(results, **kwargs) print("Found " + str(len(results)) + " results") return results.reset_index() + + +def find_project(db, name): + return _project_lookup_by_alias(db, name) + + +def list_projects(): + conn = sqlite3.connect('backlogger.db') + c = conn.cursor() + c.execute("SELECT id,aliases FROM projects") + results = c.fetchall() + conn.close() + return results +