def _validate_setting_value()

in modular_sdk/services/settings_management_service.py [0:0]


    def _validate_setting_value(self, setting_key: str, setting_value: str):
        # bool validation
        boolean_markers = ['_ENABLED', '_DISABLED', '_ACTIVE',
                           '_RUNNING', '_AVAILABLE']  # + '_IS_', '_ARE_'
        for mark in boolean_markers:
            if setting_key.endswith(mark) or '_IS_' in setting_key:
                return self.__process_boolean_value(setting_value)
            if '_ARE_' in setting_key:
                return self.__process_boolean_value(setting_value)

        # list validation
        if setting_key.endswith('_LIST'):
            return self.__process_list_value(setting_value)

        # map validation
        map_markers = ['_JSON', '_MAP', '_MAPPING']
        for mark in map_markers:
            if setting_key.endswith(mark):
                return self.__process_map_value(setting_value)

        # integer validation
        int_markers = ['_COUNT', '_THRESHOLD', '_LONG', '_INT']
        for mark in int_markers:
            if setting_key.endswith(mark):
                return self.__process_integer_value(setting_value)
            if setting_key.endswith('_EXPIRATION'):
                return self.__process_milliseconds_value(setting_value)

        # email validation
        if setting_key.endswith('_MAIL'):
            return self.__process_email_value(setting_value)

        # url validation
        if setting_key.endswith('_URL'):
            return self.__process_url_value(setting_value)

        # for all other cases
        return self.__process_regular_value(setting_value)