diff options
Diffstat (limited to 'openbb_platform/core/openbb_core/app/extension_loader.py')
-rw-r--r-- | openbb_platform/core/openbb_core/app/extension_loader.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/openbb_platform/core/openbb_core/app/extension_loader.py b/openbb_platform/core/openbb_core/app/extension_loader.py index 4381714f9aa..ea31e3cf7ca 100644 --- a/openbb_platform/core/openbb_core/app/extension_loader.py +++ b/openbb_platform/core/openbb_core/app/extension_loader.py @@ -2,7 +2,7 @@ from enum import Enum from functools import lru_cache -from typing import TYPE_CHECKING, Any, Dict, Optional +from typing import TYPE_CHECKING, Any, Dict, List, Optional from importlib_metadata import EntryPoint, EntryPoints, entry_points @@ -21,6 +21,15 @@ class OpenBBGroups(Enum): provider = "openbb_provider_extension" obbject = "openbb_obbject_extension" + @staticmethod + def groups() -> List[str]: + """Return the OpenBBGroups.""" + return [ + OpenBBGroups.core.value, + OpenBBGroups.provider.value, + OpenBBGroups.obbject.value, + ] + class ExtensionLoader(metaclass=SingletonMeta): """Extension loader class.""" @@ -57,6 +66,15 @@ class ExtensionLoader(metaclass=SingletonMeta): """Return the provider entry points.""" return self._provider_entry_points + @property + def entry_points(self) -> List[EntryPoints]: + """Return the entry points.""" + return [ + self._core_entry_points, + self._provider_entry_points, + self._obbject_entry_points, + ] + @staticmethod def _get_entry_point( entry_points_: EntryPoints, ext_name: str |