Source code for orkgnlp.common.tools.loader

# -*- coding: utf-8 -*-
from typing import Any

from orkgnlp.common.config import orkgnlp_context
from orkgnlp.common.service.base import ORKGNLPBaseService
from orkgnlp.common.util.exceptions import ORKGNLPUnknownServiceError


[docs] def load(service_name: str, *args: Any, **kwargs: Any) -> ORKGNLPBaseService: """ Creates a class object of the requested service. :param service_name: The name of the service class. :return: A service class object. """ try: return orkgnlp_context["SERVICE_MAP"][service_name](*args, **kwargs) except KeyError: raise ORKGNLPUnknownServiceError( "{} is not known. Please use one of: {}".format( service_name, list(orkgnlp_context["SERVICE_MAP"].keys()) ) )