ds_provider_xledger_py_lib.utils.rules ====================================== .. py:module:: ds_provider_xledger_py_lib.utils.rules .. autoapi-nested-parse:: **File:** ``rules.py`` **Region:** ``ds_provider_xledger_py_lib/utils`` Description ----------- GraphQL error mapping rule definitions for the Xledger provider. Classes ------- .. autoapisummary:: ds_provider_xledger_py_lib.utils.rules.Rule ds_provider_xledger_py_lib.utils.rules.ResolvedRule ds_provider_xledger_py_lib.utils.rules.GraphQLErrorRuleBook Module Contents --------------- .. py:class:: Rule Bases: :py:obj:`NamedTuple` Simple rule for mapping GraphQL errors to provider exceptions. .. py:attribute:: exc_cls :type: type[Exception] .. py:attribute:: code :type: str | None :value: None .. py:attribute:: extension_code :type: str | None :value: None .. py:attribute:: message_keywords :type: tuple[str, Ellipsis] :value: () .. py:attribute:: default_message :type: str | None :value: None .. py:class:: ResolvedRule Bases: :py:obj:`NamedTuple` Resolved rule payload returned by the rulebook. .. py:attribute:: exc_cls :type: type[Exception] .. py:attribute:: message :type: str .. py:attribute:: matched_by :type: str .. py:class:: GraphQLErrorRuleBook Registry for GraphQL-to-provider exception mapping rules. .. py:attribute:: _rules :type: tuple[Rule, Ellipsis] .. py:method:: resolve(*, code: str, extension_code: str, error_message: str) -> ResolvedRule | None :classmethod: Resolve a GraphQL error to a mapped provider exception. :param code: The error code to resolve. :param extension_code: The extension code to resolve. :param error_message: The error message to resolve. :returns: The resolved rule. .. py:method:: _match_source(*, rule: Rule, message_lower: str, code: str, extension_code: str) -> str | None :staticmethod: Return the source used to match the provided rule. :param rule: The rule to match. :param message_lower: The lowercased error message to match. :param code: The error code to match. :param extension_code: The extension code to match. :returns: A source label when the current error matches the provided rule.