Loading transfer_service/db_connector.py +42 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,48 @@ class DbConnector(object): print(e) return result[0]["creator_id"] def getGroupRead(self, vospacePath): """Returns the 'group_read' for a given VOSpace path representing a node.""" with self.getConnection() as conn: try: cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" SELECT unnest(group_read) as group_read FROM node_vos_path nvp JOIN node n ON nvp.node_id = n.node_id WHERE vos_path = %s; """, (vospacePath,)) result = cursor.fetchall() except Exception as e: if not conn.closed: conn.rollback() print(e) for i in range(0, len(result)): result[i]["group_read"] = result[i]["group_read"].split("people.")[-1].replace("\\", "") return result def getGroupWrite(self, vospacePath): """Returns the 'group_write' for a given VOSpace path representing a node.""" with self.getConnection() as conn: try: cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" SELECT unnest(group_write) as group_write FROM node_vos_path nvp JOIN node n ON nvp.node_id = n.node_id WHERE vos_path = %s; """, (vospacePath,)) result = cursor.fetchall() except Exception as e: if not conn.closed: conn.rollback() print(e) for i in range(0, len(result)): result[i]["group_write"] = result[i]["group_write"].split("people.")[-1].replace("\\", "") return result def getOSPath(self, vospacePath): """Returns a list containing full path, storage type and username for a VOSpace path.""" with self.getConnection() as conn: Loading Loading
transfer_service/db_connector.py +42 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,48 @@ class DbConnector(object): print(e) return result[0]["creator_id"] def getGroupRead(self, vospacePath): """Returns the 'group_read' for a given VOSpace path representing a node.""" with self.getConnection() as conn: try: cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" SELECT unnest(group_read) as group_read FROM node_vos_path nvp JOIN node n ON nvp.node_id = n.node_id WHERE vos_path = %s; """, (vospacePath,)) result = cursor.fetchall() except Exception as e: if not conn.closed: conn.rollback() print(e) for i in range(0, len(result)): result[i]["group_read"] = result[i]["group_read"].split("people.")[-1].replace("\\", "") return result def getGroupWrite(self, vospacePath): """Returns the 'group_write' for a given VOSpace path representing a node.""" with self.getConnection() as conn: try: cursor = conn.cursor(cursor_factory = RealDictCursor) cursor.execute(""" SELECT unnest(group_write) as group_write FROM node_vos_path nvp JOIN node n ON nvp.node_id = n.node_id WHERE vos_path = %s; """, (vospacePath,)) result = cursor.fetchall() except Exception as e: if not conn.closed: conn.rollback() print(e) for i in range(0, len(result)): result[i]["group_write"] = result[i]["group_write"].split("people.")[-1].replace("\\", "") return result def getOSPath(self, vospacePath): """Returns a list containing full path, storage type and username for a VOSpace path.""" with self.getConnection() as conn: Loading