Better data managers interface?

This commit is contained in:
John Chilton
2023-09-26 13:46:53 -04:00
parent f1c2dde09f
commit 7f2bd7215e
2 changed files with 5 additions and 7 deletions
+2 -2
View File
@@ -195,8 +195,8 @@ def reload_data_managers(app, **kwargs):
log.debug("Executing data managers reload on '%s'", app.config.server_name)
app._configure_tool_data_tables(from_shed_config=False)
reload_tool_data_tables(app)
app.data_managers = DataManagers(app)
app.data_managers.increment_reload_count()
reload_count = app.data_managers._reload_count + 1
app.data_managers = DataManagers(app, None, reload_count)
if hasattr(app, "tool_cache"):
app.tool_cache.reset_status()
if hasattr(app, "watchers"):
+3 -5
View File
@@ -32,13 +32,14 @@ log = logging.getLogger(__name__)
class DataManagers(DataManagersInterface):
data_managers: Dict[str, "DataManager"]
managed_data_tables: Dict[str, "DataManager"]
__reload_count: int
def __init__(self, app: MinimalManagerApp, xml_filename=None):
def __init__(self, app: MinimalManagerApp, xml_filename=None, reload_count: Optional[int] = None):
self.app = app
self.data_managers = {}
self.managed_data_tables = {}
self.tool_path = None
self.__reload_count = 0
self.__reload_count = reload_count or 0
self.filename = xml_filename or self.app.config.data_manager_config_file
for filename in util.listify(self.filename):
if not filename:
@@ -51,9 +52,6 @@ class DataManagers(DataManagersInterface):
if exc.errno != errno.ENOENT or self.app.config.is_set("shed_data_manager_config_file"):
raise
def increment_reload_count(self) -> None:
self.__reload_count += 1
@property
def _reload_count(self) -> int:
return self.__reload_count