Refactor service dependencies and imports
This commit is contained in:
parent
5bbb343681
commit
5eaebc4089
5 changed files with 25 additions and 15 deletions
4
src/backend/langflow/services/cache/base.py
vendored
4
src/backend/langflow/services/cache/base.py
vendored
|
|
@ -1,7 +1,9 @@
|
|||
import abc
|
||||
|
||||
from langflow.services.base import Service
|
||||
|
||||
class BaseCacheService(abc.ABC):
|
||||
|
||||
class BaseCacheService(Service):
|
||||
"""
|
||||
Abstract base class for a cache.
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@ if TYPE_CHECKING:
|
|||
|
||||
def initialize_database(fix_migration: bool = False):
|
||||
logger.debug("Initializing database")
|
||||
from langflow.services import ServiceType, service_manager
|
||||
from langflow.services.deps import get_db_service
|
||||
|
||||
database_service: "DatabaseService" = service_manager.get(ServiceType.DATABASE_SERVICE)
|
||||
database_service: "DatabaseService" = get_db_service()
|
||||
try:
|
||||
database_service.create_db_and_tables()
|
||||
except Exception as exc:
|
||||
|
|
|
|||
|
|
@ -16,48 +16,48 @@ if TYPE_CHECKING:
|
|||
|
||||
|
||||
def get_credential_service() -> "CredentialService":
|
||||
return service_manager.get(ServiceType.CREDENTIAL_SERVICE)
|
||||
return service_manager.get(ServiceType.CREDENTIAL_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_plugins_service() -> "PluginService":
|
||||
return service_manager.get(ServiceType.PLUGIN_SERVICE)
|
||||
return service_manager.get(ServiceType.PLUGIN_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_settings_service() -> "SettingsService":
|
||||
try:
|
||||
return service_manager.get(ServiceType.SETTINGS_SERVICE)
|
||||
return service_manager.get(ServiceType.SETTINGS_SERVICE) # type: ignore
|
||||
except ValueError:
|
||||
# initialize settings service
|
||||
from langflow.services.manager import initialize_settings_service
|
||||
|
||||
initialize_settings_service()
|
||||
return service_manager.get(ServiceType.SETTINGS_SERVICE)
|
||||
return service_manager.get(ServiceType.SETTINGS_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_db_service() -> "DatabaseService":
|
||||
return service_manager.get(ServiceType.DATABASE_SERVICE)
|
||||
return service_manager.get(ServiceType.DATABASE_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_session() -> Generator["Session", None, None]:
|
||||
db_service = service_manager.get(ServiceType.DATABASE_SERVICE)
|
||||
db_service = get_db_service()
|
||||
yield from db_service.get_session()
|
||||
|
||||
|
||||
def get_cache_service() -> "BaseCacheService":
|
||||
return service_manager.get(ServiceType.CACHE_SERVICE)
|
||||
return service_manager.get(ServiceType.CACHE_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_session_service() -> "SessionService":
|
||||
return service_manager.get(ServiceType.SESSION_SERVICE)
|
||||
return service_manager.get(ServiceType.SESSION_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_task_service() -> "TaskService":
|
||||
return service_manager.get(ServiceType.TASK_SERVICE)
|
||||
return service_manager.get(ServiceType.TASK_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_chat_service() -> "ChatService":
|
||||
return service_manager.get(ServiceType.CHAT_SERVICE)
|
||||
return service_manager.get(ServiceType.CHAT_SERVICE) # type: ignore
|
||||
|
||||
|
||||
def get_store_service() -> "StoreService":
|
||||
return service_manager.get(ServiceType.STORE_SERVICE)
|
||||
return service_manager.get(ServiceType.STORE_SERVICE) # type: ignore
|
||||
|
|
|
|||
|
|
@ -1,6 +1,13 @@
|
|||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from langflow.services.base import Service
|
||||
|
||||
class ServiceFactory:
|
||||
def __init__(self, service_class):
|
||||
self.service_class = service_class
|
||||
|
||||
def create(self, *args, **kwargs):
|
||||
def create(self, *args, **kwargs) -> "Service":
|
||||
|
||||
raise NotImplementedError
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
|
||||
from langflow.services.auth.utils import create_super_user, verify_password
|
||||
from langflow.services.database.utils import initialize_database
|
||||
from langflow.services.manager import service_manager
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue