225225from galaxy .util .sanitize_html import sanitize_html
226226
227227if TYPE_CHECKING :
228+ from sqlalchemy .sql .expression import BindParameter
229+
230+ from galaxy .objectstore import (
231+ BaseObjectStore ,
232+ QuotaSourceMap ,
233+ )
228234 from galaxy .schema .invocation import InvocationMessageUnion
229235
230236log = logging .getLogger (__name__ )
@@ -652,9 +658,9 @@ def stderr(self, stderr):
652658"""
653659
654660
655- def calculate_user_disk_usage_statements (user_id , quota_source_map , for_sqlite = False ):
661+ def calculate_user_disk_usage_statements (user_id : int , quota_source_map : "QuotaSourceMap" , for_sqlite : bool = False ):
656662 """Standalone function so can be reused for postgres directly in pgcleanup.py."""
657- statements = []
663+ statements : List [ Tuple [ str , Dict [ str , Any ]]] = []
658664 default_quota_enabled = quota_source_map .default_quota_enabled
659665 default_exclude_ids = quota_source_map .default_usage_excluded_ids ()
660666 default_cond = "dataset.object_store_id IS NULL" if default_quota_enabled and default_exclude_ids else ""
@@ -670,7 +676,7 @@ def calculate_user_disk_usage_statements(user_id, quota_source_map, for_sqlite=F
670676UPDATE galaxy_user SET disk_usage = ({ default_usage } )
671677WHERE id = :id
672678"""
673- params = {"id" : user_id }
679+ params : Dict [ str , Any ] = {"id" : user_id }
674680 if default_exclude_ids :
675681 params ["exclude_object_store_ids" ] = default_exclude_ids
676682 statements .append ((default_usage , params ))
@@ -1147,25 +1153,27 @@ def calculate_disk_usage_default_source(self, object_store):
11471153 usage = sa_session .scalar (sql_calc , params )
11481154 return usage
11491155
1150- def calculate_and_set_disk_usage (self , object_store ):
1156+ def calculate_and_set_disk_usage (self , object_store : "BaseObjectStore" ):
11511157 """
11521158 Calculates and sets user disk usage.
11531159 """
11541160 self ._calculate_or_set_disk_usage (object_store = object_store )
11551161
1156- def _calculate_or_set_disk_usage (self , object_store ):
1162+ def _calculate_or_set_disk_usage (self , object_store : "BaseObjectStore" ):
11571163 """
11581164 Utility to calculate and return the disk usage. If dryrun is False,
11591165 the new value is set immediately.
11601166 """
11611167 assert object_store is not None
11621168 quota_source_map = object_store .get_quota_source_map ()
11631169 sa_session = object_session (self )
1170+ assert sa_session
1171+ assert sa_session .bind
11641172 for_sqlite = "sqlite" in sa_session .bind .dialect .name
11651173 statements = calculate_user_disk_usage_statements (self .id , quota_source_map , for_sqlite )
11661174 for sql , args in statements :
11671175 statement = text (sql )
1168- binds = []
1176+ binds : List [ BindParameter ] = []
11691177 for key , _ in args .items ():
11701178 expand_binding = key .endswith ("s" )
11711179 binds .append (bindparam (key , expanding = expand_binding ))
0 commit comments