44from kajson .class_registry_abstract import ClassRegistryAbstract
55
66from pipelex import log
7- from pipelex .cogt .content_generation .content_generator_protocol import ContentGeneratorProtocol
7+ from pipelex .cogt .content_generation .content_generator_protocol import (
8+ ContentGeneratorProtocol ,
9+ )
810from pipelex .cogt .imgg .imgg_worker_abstract import ImggWorkerAbstract
911from pipelex .cogt .inference .inference_manager_protocol import InferenceManagerProtocol
1012from pipelex .cogt .llm .llm_models .llm_deck_abstract import LLMDeckAbstract
1113from pipelex .cogt .llm .llm_models .llm_engine_blueprint import LLMEngineBlueprint
12- from pipelex .cogt .llm .llm_models .llm_model_provider_abstract import LLMModelProviderAbstract
14+ from pipelex .cogt .llm .llm_models .llm_model_provider_abstract import (
15+ LLMModelProviderAbstract ,
16+ )
1317from pipelex .cogt .llm .llm_worker_abstract import LLMWorkerAbstract
1418from pipelex .cogt .ocr .ocr_worker_abstract import OcrWorkerAbstract
1519from pipelex .cogt .plugin_manager import PluginManager
2832from pipelex .tools .config .manager import config_manager
2933from pipelex .tools .config .models import ConfigRoot
3034from pipelex .tools .secrets .secrets_provider_abstract import SecretsProviderAbstract
35+ from pipelex .tools .storage .storage_provider_abstract import StorageProviderAbstract
3136from pipelex .tools .templating .template_provider_abstract import TemplateProviderAbstract
3237
3338
@@ -46,6 +51,7 @@ def __init__(self):
4651 self ._secrets_provider : Optional [SecretsProviderAbstract ] = None
4752 self ._template_provider : Optional [TemplateProviderAbstract ] = None
4853 self ._class_registry : Optional [ClassRegistryAbstract ] = None
54+ self ._storage_provider : Optional [StorageProviderAbstract ] = None
4955 # cogt
5056 self ._llm_models_provider : Optional [LLMModelProviderAbstract ] = None
5157 self ._llm_deck_provider : Optional [LLMDeckAbstract ] = None
@@ -112,6 +118,9 @@ def reset_config(self) -> None:
112118 def set_secrets_provider (self , secrets_provider : SecretsProviderAbstract ):
113119 self ._secrets_provider = secrets_provider
114120
121+ def set_storage_provider (self , storage_provider : StorageProviderAbstract | None ):
122+ self ._storage_provider = storage_provider
123+
115124 def set_template_provider (self , template_provider : TemplateProviderAbstract ):
116125 self ._template_provider = template_provider
117126
@@ -198,6 +207,11 @@ def get_required_class_registry(self) -> ClassRegistryAbstract:
198207 raise RuntimeError ("ClassRegistry is not initialized" )
199208 return self ._class_registry
200209
210+ def get_storage_provider (self ) -> StorageProviderAbstract :
211+ if self ._storage_provider is None :
212+ raise RuntimeError ("StorageProvider is not initialized" )
213+ return self ._storage_provider
214+
201215 # cogt
202216
203217 def get_required_llm_models_provider (self ) -> LLMModelProviderAbstract :
@@ -297,6 +311,10 @@ def get_secrets_provider() -> SecretsProviderAbstract:
297311 return get_pipelex_hub ().get_required_secrets_provider ()
298312
299313
314+ def get_storage_provider () -> StorageProviderAbstract :
315+ return get_pipelex_hub ().get_storage_provider ()
316+
317+
300318def get_template_provider () -> TemplateProviderAbstract :
301319 return get_pipelex_hub ().get_required_template_provider ()
302320
@@ -391,7 +409,9 @@ def get_pipe_provider() -> PipeProviderAbstract:
391409 return get_pipelex_hub ().get_required_pipe_provider ()
392410
393411
394- def get_pipes_by_domain (excluded_domains : Optional [List [str ]] = None ) -> Dict [str , List [str ]]:
412+ def get_pipes_by_domain (
413+ excluded_domains : Optional [List [str ]] = None ,
414+ ) -> Dict [str , List [str ]]:
395415 pipes = get_pipe_provider ().get_pipes ()
396416 pipes_by_domain : Dict [str , List [str ]] = defaultdict (list )
397417 for pipe in pipes :
0 commit comments