summaryrefslogtreecommitdiffstats
path: root/openbb_platform/core/openbb_core/app/extension_loader.py
diff options
context:
space:
mode:
Diffstat (limited to 'openbb_platform/core/openbb_core/app/extension_loader.py')
-rw-r--r--openbb_platform/core/openbb_core/app/extension_loader.py20
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