Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def get_namespace_injectables(
dependency: Injectable, namespace: str
) -> Tuple[Set[Injectable], str, str]:
if len(InjectionContainer.NAMESPACES) == 0:
raise InjectionContainerNotLoadedError(
"InjectionContainer::load was not invoked"
)
injection_namespace = InjectionContainer.NAMESPACES[
namespace or InjectionContainer.DEFAULT_NAMESPACE
]
if isinstance(dependency, str):
registry = injection_namespace.qualifier_registry
lookup_key = dependency
lookup_type = "qualifier"
else:
registry = injection_namespace.class_registry
lookup_key = dependency.__qualname__
lookup_type = "class"
injectables = registry.get(lookup_key)
return injectables, lookup_key, lookup_type