refactor: inject metadata sidecar dependencies
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
"""Metadata normalization and sidecar payload helpers for downloads."""
|
||||
|
||||
import importlib
|
||||
import os
|
||||
import time
|
||||
from typing import Any, Dict, Optional
|
||||
@@ -32,9 +31,11 @@ _as_list = as_list
|
||||
_first_present = first_non_empty
|
||||
|
||||
|
||||
def _downloader_module():
|
||||
"""Return the facade so runtime patches remain effective."""
|
||||
return importlib.import_module("core.downloader")
|
||||
def _require_dependencies(dependencies: Any) -> Any:
|
||||
"""Return explicitly supplied services for metadata sidecars."""
|
||||
if dependencies is None:
|
||||
raise RuntimeError("metadata sidecar dependencies were not provided")
|
||||
return dependencies
|
||||
|
||||
|
||||
def write_model_resolver_metadata(
|
||||
@@ -43,9 +44,11 @@ def write_model_resolver_metadata(
|
||||
category: str = "",
|
||||
source_url: str = "",
|
||||
create_preview: bool = False,
|
||||
*,
|
||||
dependencies: Any = None,
|
||||
) -> Optional[str]:
|
||||
"""Write metadata only to the sidecar owned by Model Resolver."""
|
||||
facade = _downloader_module()
|
||||
facade = _require_dependencies(dependencies)
|
||||
metadata_path = facade.get_model_resolver_sidecar_path(dest_path)
|
||||
|
||||
try:
|
||||
|
||||
+4
-1
@@ -293,7 +293,10 @@ for _aria2_dependency_name in (
|
||||
)
|
||||
|
||||
|
||||
for _download_dependency_name in ("get_download_directory",):
|
||||
for _download_dependency_name in (
|
||||
"get_download_directory",
|
||||
"write_model_resolver_metadata",
|
||||
):
|
||||
globals()[_download_dependency_name] = _bind_download_dependencies(
|
||||
globals()[_download_dependency_name]
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user